在Visual Studio Professional 2013中编译C ++程序不适用于Windows XP SP3

时间:2013-11-19 01:10:45

标签: c++ visual-studio-2013 windows-xp-sp2

我经常讨厌提问,但这个让我难过。

我正在使用Visual Studio Professional 2013中的C ++和Allegro5创建一个小游戏。我使用了Visual Studio 2013 - Windows XP(v120_xp)平台工具集,并确保在目标计算机上安装了Visual C ++ 2013可再发行组件。

我正在使用Windows 8.1进行开发,目标计算机正在运行Windows XP SP2。

每当我尝试运行程序时,都会收到一条消息,指出.exe不是有效的Win32应用程序。

即使我没有使用与.NET相关的任何东西,我也确保它也安装在目标机器上。

我还确保程序本身是32位应用程序。

我真的不确定下一步该尝试什么。我搜索了过去几个小时,并确保安装了任何必要的东西。我仍然相当新,所以我很可能忽略了一些简单的事情,但我不能为我这样的人想到什么。

3 个答案:

答案 0 :(得分:14)

您必须从属性(预览)

设置平台工具集配置

将其值设置为v120_xp,它应该适用于Windows XP。

阅读帖子 http://supportxpdotcom.wordpress.com/2013/07/16/xp-targeting-support-in-the-visual-studio-2013-preview/

看到评论 http://blogs.msdn.com/b/vcblog/archive/2013/06/26/visual-studio-2013-preview-now-available.aspx

答案 1 :(得分:8)

我刚刚解决了同样的问题。您可能忘记设置SUBSYSTEM

转到项目属性 - >链接器 - >系统并酌情设定。

详细信息: http://blogs.msdn.com/b/vcblog/archive/2012/10/08/10357555.aspx?PageIndex=2

答案 2 :(得分:1)

问题可能是由其他编译器选项引起的: / arch (启用增强指令集)。尝试将其设置为 / arch:IA32 (无增强说明)。