Wip*_*per 23 c c++ windows-xp visual-c++ visual-studio-2012
好的,所以我在Windows 7 x64中使用Visual Studio 2012进行编程和编译.我的应用程序工作正常存在,但是当我试图从Windows XP SP3的虚拟机执行它,我得到"XXXX.EXE不是有效的Win32应用程序"的时候了.
正在使用静态链接编译应用程序,即使用/ MT.我在targetver.exe中将_WIN32_WINNT设置为0x0501; 配置管理器设置为Win32,链接器高级选项中的目标计算机设置为MACHINEX86.
我的targetver.h看起来像这样:
#include <winsdkver.h>
#define _WIN32_WINNT 0x0501
#define WINVER 0x0501
#define NTDDI_VERSION 0x0501
#include <SDKDDKVer.h>
Run Code Online (Sandbox Code Playgroud)
我也尝试使用/ MD进行编译并安装.NET Framework,这也没有帮助.
我很无能,我真的可以使用一些帮助,因为我需要让它适用于Windows XP.提前致谢.
ild*_*arn 24
从评论中重新发布,并注意此答案仅适用于VC++ 2012:
VC++ 2012 RTM并没有支持WinXP的-在今年晚些时候的支持会在VS2012更新1.
与此同时,您可以使用VC++ 2012安装WinXP目标的CTP,但是您必须静态链接CRT才能进行部署.有关更多信息,请参阅此博客文章.
编辑: Visual Studio 2012 Update 1现已发布,并增加了在Windows XP上运行使用VC++ 2012构建的应用程序的官方支持以及动态链接CRT的功能.
应该做两件事:
配置属性>常规页面,将Platform Toolset更改为:Visual Studio 2012 - Windows XP(v110_xp);
链接器>系统.将子系统更改为:控制台/ Windows.
详细解释如下:http://software.intel.com/en-us/articles/linking-applications-using-visual-studio-2012-to-run-on-windows-xp
| 归档时间: |
|
| 查看次数: |
47939 次 |
| 最近记录: |