2013-12-16 142 views
5

我有一個使用Visual Studio 2012和.NET 4.5構建的簡單C#控制檯應用程序。無法在Windows XP上運行Visual Studio 2012程序

當我建立我的64位Windows 7機器上的溶液中,然後MyProgram.exe文件從該位置複製:

C:\用戶\我\桌面\ MyProgram \ MyProgram \ BIN \ X86

到Windows XP的機器,然後再嘗試運行MyProgram.exe文件,我得到以下錯誤:

MyProgram.exe is not a valid win32 application 

我可以通過谷歌搜索只是說很多其他人也有同樣的問題的問題,看到和有許多建議的解決方案。但沒有任何解決方案似乎對我有幫助。

有人可以請我一步一步地指導如何準備運行在XP上的.exe文件嗎?

+0

是你的Windows XP安裝64位? –

+0

您是否嘗試過在Project> *您的項目名稱*屬性>構建中更改平臺目標選項? – valsidalv

+0

你的WinXP盒子上安裝了.Net 4.5嗎? –

回答

3

我終於搞定了!所有這一次試圖找出如何解決這個問題,解決方案是從頭開始重新創建整個項目。

對任何人來說這是同樣的情況,節省自己的時間和頭痛,並做到以下幾點:

  1. 保存並關閉VS2012的所有實例。
  2. 啓動一個全新的VS實例,並以.NET 4.0爲目標。
  3. 在做其他事情之前,進入配置管理器和目標x86。
  4. 現在將您的舊代碼複製到此項目中。
  5. 編譯並在XP上運行。
  6. 完成!
+0

下一次,只需將.NET Framework目標版本更改爲4.0 –

5

我使用的步驟(而無需創建一個新的項目):

  1. 打開項目設置,選擇應用。
  2. 在 「目標框架」,選擇.Net框架4.
  3. 重新編譯

就是這樣。

如果您使用的是發佈功能,請記得在「先決條件」下將發佈(單擊)設置設置爲使用Framework 4。我發現該框架的客戶端版本似乎並沒有削減它,儘管文檔似乎表明了這一點,但您仍然需要完整版本,但也許這是一個逐個項目的基礎。

0

在Windows Vista及更高版本中編譯的程序無法在Windows XP中運行。

http://blogs.msdn.com/b/vcblog/archive/2012/06/15/10320645.aspx 

您需要將編譯器設置爲VC2010,並確保在'release'模式下編譯以確保程序可以在另一臺機器上運行。

相關問題