注意:博主一开始出现问题的根本是把存有VS与之的相关SDK插件的盘给格式化并合并到其它盘,若用户一开始的条件不成立,可进行跳读和选读。
当博主二次安装VS时,先出现了以下问题:
博主上网搜了 多种方法,以下网址可借鉴,但不能根本性解决问题:
网址A:
VS2017安装时,共享组件、工具和SDK的位置不能更改_系统缓存、工具和位置固定的sdk-CSDN博客
首先打开Visual Studio Installer,点击修改
选择安装位置,看第三行的SDK路径(绝对路径)
绝对路径可通过网址A来修改,不过先不急修改这么快。去找绝对路径的位置,看你的Shared文件是否还在(二次安装时前置卸载是否彻底),一般这个文档是一G多。
情况一:Shared文件还在,那么你就勾选右边的插件选项,把Windows 11SDK和Windows 10SDK给选上,然后点击右下角的选择全部下载后安装,开始安装。
(如果Shared文件不在,也勾上,出现情况二再另当别论,解决情况三的前提也是要勾选上的)
安装成功后,不出意外你的工程里面有关无法打开xxxx.h头文件问题就会得到解决。
情况二:安装成功后,出意外了,还是显示遇到图片一的有关SDK插件问题。
那么此时,你就可以按照网址B:
安装Visual Studio 2022无法安装Win11SDK的解决办法 - 简书 (jianshu.com)
的做法,去下个Windows Install Clean Up(如果下载完后无法打开软件,请滑到底部),按照那个博主的办法,把旧版本的SDK插件给删了(二次安装时旧的插件把本来要安装新的插件给顶掉了)。
最后,打开 Visual Studio Installer 按照情况一步骤重新安装就好了。
注意:情况一、情况二不用使用注册表修改绝对路径。
情况三:Shared文件不在。
博主二次安装前把这个Shared文件的驱动盘给格式化了,但绝对路径仍在。
请跳转网址C:安装vs2022,出现提示九次尝试后都无法安装,点击继续安装,结束后提示两个与win11sdk相关问题 - Microsoft Q&A
根据翻译:转到网址D:Windows SDK 和模拟器存档 |Microsoft开发人员
手动下载并安装 Windows SDK。然后,转到 Visual Studio 安装程序并修复或重试 VS 安装。
由于博主已经把绝对路径的盘给格式化了,所以它会显示无效驱动器E盘(效果图是偷的)。
(3.1)那么此时,就可以复原E盘,并顺带按照网址A利用注册表把旧盘绝对路径删了,再打开Visual Studio Installer,点击修改,选择安装位置,看第三行的SDK路径(绝对路径),把它的路径改为默认位置C盘。
如果路径修改不了,重新下载也不行,那这个绝对路径就不改了。
然后再用微软自带的文件资源管理器打开这个图片页面显示的绝对路径:
"C:\Program Files (x86)\Microsoft Visual Studio\Shared"
看看Shared文件里面有没有这些文件(大概200多M),有的且内存对得上,请跳读到下面的蓝色体“(3.2)”
没有的话,打开Visual Studio Installer,点击更多->修复,等待。
或者直接去偷同学的,博主就是(以防修复后文件仍丢失)。
修复完成后,绝对路径里的Shared文件仍对不上博主上面图片所显示的相关文件,建议去偷。
(3.2)复原E盘后,打开Visual Studio Installer,点击更多->修复,等待。
修复完成后,原本空空如也的E盘就会出现两个文件。
Visual Studio Installer的快捷方式就会出现,路径为:"E:\Windows\Start Menu\Programs\Visual Studio Installer.lnk"
在E盘中搜索Neutral,按照网址E:VS2019解决MSB8036 找不到 Windows SDK 版本 10.0.19041.0-CSDN博客
博主E盘的Neutral文件路径为:
"E:\Windows Kits\10\Extension SDKs\WindowsDesktop\10.0.19041.0\DesignTime\CommonConfiguration\Neutral"
打开UAP.props文件(已笔记本方式打开),找到第5行:
把“<WindowsSdkDir>$([MSBUILD]::GetDirectoryNameOfFileAbove(‘$(MSBUILDTHISFILEDIRECTORY)’, ‘sdkmanifest.xml’))\</WindowsSdkDir>”
改为
“<WindowsSdkDir Condition="'$(WindowsSdkDir)' == ''">$([MSBUILD]::GetDirectoryNameOfFileAbove('$(MSBUILDTHISFILEDIRECTORY)', 'sdkmanifest.xml'))\</WindowsSdkDir>
”
修改完后并保存。
值得注意的是,如果你之前利用注册表修改了绝对路径,那么你就把E盘的Neutral文件复制粘贴到C盘的Neutral文件(它那里是空的)。
C盘的Neutral文件路径一般为:
"C:\Program Files (x86)\Microsoft SDKs\Portable\v15.0\DesignTime\CommonConfiguration\Neutral\UAP\10.0.19041.0\UAP.props"
此时,再打开Visual Studio Installer,点击修改,检查右边的SDK插件选项,有没有把Windows 11SDK和Windows 10SDK给选上。
1)如果已经选上了,那么项目工程里无法打开xxxx.h头文件就会得到解决。
2)如果没有,插件给选上,然后点击右下角的选择全部下载后安装,开始安装。
重新安装完成后,重复(3.1)(3.2),主要是检查Shared文件在不在,Neutral里之前修改的UAP.props文件有没有被重置。
此时,随打开一个工程,项目工程里无法打开xxxx.h头文件就会得到解决。
无法使用Windows Install Clean Up软件解决办法
下载完Windows Install Clean Up后,会出现msicuu.exe这个程序:
右键单机它,以管理员身份运行,点击Next
点击Finish
在这个路径找到msicuu.exe程序
路径:"C:\Program Files (x86)\Windows Installer Clean Up\msicuu.exe"
双击运行它,按照控制面板找到要删除的VS的SDK插件(谨慎选择),按ctrl选择不同文件,点击REMOVE删除
不会选择文件的,参考情况二的 网址B: