无法在Visual Studio C++项目中更改Windows SDK版本

12
我有一个使用Visual Studio 2015创建的Visual Studio C++控制台应用程序,现在我无法使用Visual Studio 2017编译它,因为它针对未安装的Windows 8.1 SDK进行了定位。问题在于,我无法将项目重新定位到Windows 10 SDK。
当我打开项目属性页面并转到“常规 - 目标平台”时,我可以在下拉菜单中看到Windows 10 SDK,并且我可以选择它...但是,一旦我按下“应用”,它就会自动恢复到8.1。没有提供任何错误消息。

enter image description here

Visual Studio的安装程序表明,确实已经安装了列出的SDK版本:

enter image description here

这里发生了什么?有没有一种方法可以重新定向我的项目,而不必安装Windows 8.1 SDK?
不确定是否重要,但是:这个项目实际上只是一个“包装器”,围绕着另一个人开发的仅由一堆.cpp和.h文件组成的基本项目。我真的不熟悉C++开发。

只需安装8.1 SDK即可避免更改SDK版本。 - magicandre1981
1个回答

7

经过几个小时的奋斗,我意外地发现,在选择“项目属性/常规”并将“平台工具集”更改为v141_xp(而不是v141)后,Windows SDK版本会被强制降到8.1或7.0。我不确定Visual Studio如何选择要使用的SDK。

注:您必须编辑.vcxproj并同时更改以下两个内容:

<TargetPlatformVersion>10.0.17134.0</TargetPlatformVersion>
<WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion>

尝试过这个方法,但仍然会回到 VS 2019。 - PhoenixXKN
1
这很混乱,我不知道该怎么帮忙,抱歉。 - nyanpasu64
最终我只好屈服,安装了项目锁定的SDK版本,幸运的是它没有破坏任何重要的东西。 - PhoenixXKN

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接