Tyl*_*ian 9 c++ windows visual-c++ visual-studio-2015
我在Windows 8.1上使用Microsoft Visual Studio 2015.我想编译一个针对Windows XP的程序.我已经在谷歌和其他类似的问题上查了一下,但都没有帮助.在解决方案设置中,目标平台工具集设置为Windows XP,但目标平台版本中没有Windows XP选项.我确实阅读了https://msdn.microsoft.com/en-us/library/windows/desktop/aa383745 ( v= vs.85) .aspx(使用Windows标题)并将这些行添加到我的程序中:
#define WINVER _WIN32_WINNT_WINXP
#define _WIN32_WINNT _WIN32_WINNT_WINXP
#define NTDDI_VERSION NTDDI_WINXP
Run Code Online (Sandbox Code Playgroud)
但它仍然无效.它说它找不到"MSVCP140.dll".我得到这个DLL后,开始抱怨无法找到"VC140.dll".之后是"ucrtbased.dll",最后是"api-ms-win-core-string-11-1-0.dll",我甚至没有在我的Windows 8.1计算机中使用它.该程序可以在Windows 8.1上运行,但不能在Windows XP上运行.如何使程序在Windows XP上运行?
Chu*_*urn 35
为了使用VS 2015(或VS 2012/VS 2013)构建与Windows XP兼容的EXE,您必须使用v140_xp
Platform Toolset而不是默认的v140
Platform Toolset.
请参阅"项目属性","常规"页面:
这是因为默认的Platform Toolset使用Windows 8.1 SDK(或者您可以选择加入Windows 10 SDK),这仅支持为Windows Vista或更高版本构建应用程序.当您选择v140_xp
平台工具集时,您使用的是Windows 7.1 SDK的一个版本,它是支持Windows XP或Windows Server 2003的最新版本.
请注意,Visual Studio可以针对Windows XP Service Pack 3或Windows Server 2003 Service Pack 2.C/C++运行时与旧版本的Windows不兼容.
如果您在应用程序中使用DirectX,这会产生深远的影响,因为Windows 7.1 SDK和Windows 8 SDK之间有很多变化.有关详细信息,请参阅此帖
使用VS 2015,您还需要在自定义安装选项中选择Windows XP支持,或者通过程序和功能/ Microsoft Visual Studio 2015 /更改... /修改:
归档时间: |
|
查看次数: |
29887 次 |
最近记录: |