Visual studio Windows SDK与Visual Studio的兼容性

Visual studio Windows SDK与Visual Studio的兼容性,visual-studio,winapi,visual-c++,visual-studio-2005,Visual Studio,Winapi,Visual C++,Visual Studio 2005,关于哪些VisualStudio版本(比如,2005-2017年)与哪些版本兼容,是否存在任何兼容性矩阵 应该完全兼容“任何”C++编译器,或者是不同的Windows SDK版本绑定到某些编译器版本? 例如,(我们)有一个仍然用VS2005编译的遗留C++应用程序。我们发现我们希望从此应用程序中使用。但要使用此功能,需要使用至少来自支持Windows 8.1的SDK的头文件+库文件(例如C:\Program Files(x86)\Windows Kits\8.1\Include\um)中的8.1

关于哪些VisualStudio版本(比如,2005-2017年)与哪些版本兼容,是否存在任何兼容性矩阵

应该完全兼容“任何”C++编译器,或者是不同的Windows SDK版本绑定到某些编译器版本?

例如,(我们)有一个仍然用VS2005编译的遗留C++应用程序。我们发现我们希望从此应用程序中使用。但要使用此功能,需要使用至少来自支持Windows 8.1的SDK的头文件+库文件(例如

C:\Program Files(x86)\Windows Kits\8.1\Include\um
)中的8.1 SDK头文件)

通常,开发人员是否应该期望能够在不升级编译器/Visual Studio的情况下切换到较新的Windows SDK版本

请不要建议升级VS:这个问题试图确定当升级VS目前不是一个选项,但您希望使用仅在较新的Windows(SDK)版本中可用的功能(并依赖于该功能)时您应该做什么。

关于“兼容性矩阵”当前位置:我认为没有人努力创建一个,我也不确定这是否真的需要。 经验法则:这些API头不会经常更改,当它们更改时,它们通常非常向后兼容

棘手的部分可能是教您的老VS如何使用新的SDK,您可能需要手动更改解决方案/项目的VC+include/source/lib目录。 (如果它符合您的旧VS中的链接,您应该很好)

MSDN论坛线程: