21

我通常讨厌问问题,但这个问题让我很难过。

我正在 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 位应用程序。

我真的不确定下一步该尝试什么。我已经搜索了过去几个小时,并确保安装了任何必要的东西。我在这方面还很陌生,所以很可能我忽略了一些简单的事情,但我想不出像我这样的人会想到什么。

4

3 回答 3

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

于 2013-11-19T08:03:13.753 回答
8

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

转到项目属性 -> 链接器 -> 系统并根据需要进行设置。

详情在这里:http: //blogs.msdn.com/b/vcblog/archive/2012/10/08/10357555.aspx ?PageIndex=2

于 2014-05-05T04:23:44.620 回答
1

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

于 2013-12-26T14:45:54.797 回答