1、VS2022创建新项目,创建成功但是解决方案显示0项目
2、在解决方案中添加现有项目报错“找不到指定的SDK”
3、利用dotnet --info发现找不到SDK
系统里同时安装了x86和x64的dotnet sdk,分别在
C:\Program Files (x86)\dotnet以及C:\Program Files\dotnet目录下。使用dotnet命令时,默认是x86的目录,导致找不到sdks。
1、将C:\Program Files (x86)\dotnet中的dotnet.exe删掉或者重命名
2、将系统环境变量PATH中的C:\Program Files (x86)\dotnet置于C:\Program Files \dotnet之后,或者直接将C:\Program Files (x86)\dotnet从系统变量里删掉
参考链接
电脑明明
安装
了
Windows
SDK
,但就是提示
找
不到
:
MSB8036
找
不到
Windows
SDK
版本 10.0.19041.0。请
安装
所需版本的
Windows
SDK
,或者在
项目
属性页
中
或通过右键单击
解决方案
并选择“重定
解决方案
目标”来更改
SDK
版本。
VS
确定
SDK
是通过一个
sdk
manifest.xml来
找
的,以前的
SDK
版本这个文件都是在
windows
sdk
根目录下,
我这里可能是这台机器同时装了
VS
2017的原因。
而新版本的这个文件在
SDK
根目录是
找
不到
的,所以需要增
Win8下Android
SDK
的
安装
与环境变量配置,具体内容如下
1、下载Android
SDK
,点击
安装
,直接默认路径即可!
进入该网站后往下拉就能
找
到
sdk
下载的位置,选择图
中
红圈的程序进行下载
2、
安装
过程比较简单,按照平时
安装
软件的方式来就行,默认路径
安装
后,
安装
完成,开始配置环境变量。
3、打开计算机属性——高级系统设置——环境变量
4、新建一个系统变量,变量名:ANDROID_HOME,变量值:C:\Program Files \android-
sdk
(以你
安装
目录为准,确认里面有tools和add-ons等多个文件夹),点击确认。
5、在变量PATH后面加上变量值;%A
MSB8036
找
不到
Windows
SDK
版本 8.1。请
安装
所需版本的
Windows
SDK
,或者在
项目
属性页
中
或通过右键单击
解决方案
并选择“重定解决前言方法
有时候“执行调试C++
项目
”或者“新建C++
项目
”时,会出现下面的编译错误:
MSB8036
找
不到
Windows
SDK
版本 8.1。请
安装
所需版本的
Windows
SDK
,或者在
项目
属性页
中
或通过右键单击
解决方案
并选择“重定
解决方案
目标”来更改
SDK
版本。
**那我们该如何解决这个编译错误呢?**
如图所示.
是 NT 4.0,则应从在
Windows
2000 上运行快速入门的远程服务器
读取文档。如果是这种情况,您将能够从本地
运行
Windows
窗体和控制台示例,但 ASP
.NET
页
将从远程服务器运行--这称为“混合模式”。
详细信息见内当文档
盲猜一下报错原因是:两个dotnet路径冲突导致的,系统默认去上面的路径
找
sdk
,没
找
到。1、设置完环境变量后,需要保存关闭窗口,重新cmd打开,才能生效。重新用
VS
打开
解决方案
,
项目
加载成功,如图。2、我估计,donet路径删掉也行。报错原因很明显,就是系统
找
不到
。那就只能去看环境变量有没有问题。文件,发现这个位置用到了。发现有两个dotnet路径。运行结果如下,
SDK
找
到了。果然,系统也没
找
到
SDK
。这个
SDK
的存储路径。然后点击确定,关闭窗口。使用cmd打开,执行。关掉原来的cmd窗口。
6、这时倒回cmd去看 dotnet --info就会有具体的
SDK
信息了,并且
vs
能正常新建
项目
、正常打开
项目
了。3、你会报错的话,这里一定是空的,而不是像我一样
显示
了具体的
SDK
。5、把Program Files(x86)删掉就可以解决报错了。2、输入 dotnet --info。4、打开计算机环境变量。
安装
VS
2019后,创建了A
项目
,引用了高版本的
SDK
;编译通过
安装
VS
2017后,重新打开A
项目
,这时将其
中
SDK
版本换成其他版本(低版本
SDK
);未编译
新建
项目
属性页(视图–
解决方案
–
项目
下Debugx64右键添加新
项目
属性表);编译失败
编译结果类似如下:
问题产生原理
vs
2019
安装
时的
sdk
信息是写在注册表
中
的,不管新
安装
vs
2017是否卸载
vs
2019都会出现这个问题,因为
项目
自带的属性管理表始终读的注册表的值
Visual Studio
项目
到 Makefile
该
项目
旨在成为一种将
项目
构建信息从 Visual Studio
项目
文件格式自动转录为 makefile 的方法。
大体架构是先将所有
VS
文件解析成反映
VS
项目
文件打包信息的数据结构。 然后,从这些结构
中
,使用更通用的
项目
描述格式 ( cproj )。 最后,使用 cproj 数据结构作为输入,可以使用任何类型的构建系统生成器。 在这个
项目
中
,提供了一个 makefile 生成器。
cproj.* 下的所有包都与加载
VS
项目
文件并将它们转换为通用 CProj 格式有关。
jd2m.* 下的包特定于,对一般的
VS
-to-make 翻译过程没有任何用处。 尽管如此,它们为实际
项目
核心提供了很好的参考和测试。
此外,可能还有一些通用功能留在那里,因为核心功能的分解并没有在整个过程
中
进行。
这个
项目
已