用VC2013編譯了一個程序,在Windows 8、Windows 7(64位、32位)下都能正常運行。但在Win XP,Win2003下運行時,卻報錯不能運行

用VC2013編譯了一個程序,在Windows 8、Windows 7(64位、32位)下都能正常運行。但在Win XP,Win2003下運行時,卻報錯不能運行,具體錯誤信息爲“指定的可執行文件不是有效的 Win32 應用程序”。

用VS2012或VS2013在win7下編寫的程序在XP下運行就出現“不是有效的win32應用程序


問題分析:

用eXeScope打開該exe,發現操作系統需求爲“6.0”,即只能在Windows Vista或更高的操作系統下運行。


解決方法:

解決方法1:

鏈接器->系統->子系統->控制檯或windows 後面的”最低版本“是5.01

 

解決辦法2:

1.用VC2013打開項目源代碼,選中項目,然後右鍵菜單裏點屬性打開項目屬性對話框;

2.在左側樹列表裏選擇 配置屬性->常規,然後在右側列表的“平臺工具集”選中“Visual Studio 2013 – Windows XP (v120_xp)”,再點擊確認。

 

 

改好後重新編譯,就能正常運行了。

此時再用eXeScope打開該exe,發現操作系統需求爲“5.1”,即能在Windows XP或更高的操作系統下運行。

參考微軟的解釋

http://msdn.microsoft.com/zh-SG/library/jj851139.aspx

解決辦法3:

1.下載安裝升級包http://www.microsoft.com/zh-cn/download/details.aspx?id=39305

2.可以通過如下的操作實現:

1).在“Solution Explorer”中選中項目,然後右鍵菜單裏點屬性。

2).在Property Pages裏選擇Configuation Properties,選擇General,然後在Platform Toolset裏選中Visual Studio 2012 – Windows XP (v110_xp)即可。

 

發佈了74 篇原創文章 · 獲贊 36 · 訪問量 17萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章