Windows 10上的Windows SDK是否与Windows XP及更低版本不兼容? 我试着运行一个显示窗口的C++应用程序。它使用的API函数与Windows XP兼容,但应用程序本身不会在我的Windows XP VM上运行

Windows 10上的Windows SDK是否与Windows XP及更低版本不兼容? 我试着运行一个显示窗口的C++应用程序。它使用的API函数与Windows XP兼容,但应用程序本身不会在我的Windows XP VM上运行,windows,winapi,sdk,compatibility,Windows,Winapi,Sdk,Compatibility,它是在Windows10上编译的,一些Google向我展示了一个答案,说Windows10SDK与WindowsXP或更低版本不兼容 为什么呢?原型和函数名是否不尽相同 如果没有,我应该使用哪个SDK来获得全面的兼容性?如果您使用的是Visual Studio,那么默认平台工具集在不久前就放弃了对Windows XP的支持。您可以从菜单项目->项目名称属性…然后配置属性->常规->平台工具集切换到另一个平台工具集。在这里,您可以更改用于当前项目的工具集 但XP工具集无法安装 安装Window

它是在Windows10上编译的,一些Google向我展示了一个答案,说Windows10SDK与WindowsXP或更低版本不兼容

为什么呢?原型和函数名是否不尽相同


如果没有,我应该使用哪个SDK来获得全面的兼容性?

如果您使用的是Visual Studio,那么默认平台工具集在不久前就放弃了对Windows XP的支持。您可以从菜单
项目->项目名称属性…
然后
配置属性->常规->平台工具集
切换到另一个平台工具集。在这里,您可以更改用于当前项目的工具集

但XP工具集无法安装

安装Windows XP平台工具集

将v141_xp平台工具集和组件安装到目标Windows 在XP和Windows Server 2003中,运行Visual Studio安装程序。当你 最初安装Visual Studio,或在修改现有 安装,确保C++开发的桌面开发 挑选出来的。在“单个组件”选项卡的“编译器”下,生成 工具和运行时选择VS 2017(V141)的C++ WindowsXP支持 工具[已弃用],然后选择“安装”或“修改”


当然,sdk头文件/库文件与Windows XP兼容。您的应用程序运行速度不是最快的,因为您将OperationsSystemVersion从
IMAGE\u可选\u HEADER
设置为更高的版本5.1,或者使用xpguess上不存在的一些api如果您还没有这样做,您需要设置我不确定具体是什么,所以我使用了MAKEWORD(5,1)然后在子系统设置中设置该值,现在我得到的错误与在主Windows 10计算机上运行Windows XP时的错误相同。我只想让它与所有版本兼容,兄弟。@AbcDef如果你不发布代码和编译器/链接器命令行,就无法回答这个问题。你还需要告诉我们你的程序在XP上是如何失败的。