Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# VS2019-使用C时MSBuild SdkResolver无法运行# 我试图从C++开始(我一直在使用VS,没有问题),每当我试图打开一个C项目时,我就得到这个错误: The project file cannot be opened. The SDK resolver "Microsoft.DotNet.MSBuildSdkResolver" failed to run. Illegal characters in path._C#_Visual Studio_Msbuild_Visual Studio 2019 - Fatal编程技术网

C# VS2019-使用C时MSBuild SdkResolver无法运行# 我试图从C++开始(我一直在使用VS,没有问题),每当我试图打开一个C项目时,我就得到这个错误: The project file cannot be opened. The SDK resolver "Microsoft.DotNet.MSBuildSdkResolver" failed to run. Illegal characters in path.

C# VS2019-使用C时MSBuild SdkResolver无法运行# 我试图从C++开始(我一直在使用VS,没有问题),每当我试图打开一个C项目时,我就得到这个错误: The project file cannot be opened. The SDK resolver "Microsoft.DotNet.MSBuildSdkResolver" failed to run. Illegal characters in path.,c#,visual-studio,msbuild,visual-studio-2019,C#,Visual Studio,Msbuild,Visual Studio 2019,.csprj只有7行 <Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <TargetFramework>netstandard2.0</TargetFramework> </PropertyGroup> </Project> netstandard2.0 我尝试将“替换为”,但得到了相同的错误 使用/ResetSkipP

.csprj只有7行

    <Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFramework>netstandard2.0</TargetFramework>
  </PropertyGroup>

</Project>

netstandard2.0
我尝试将
替换为
,但得到了相同的错误

使用
/ResetSkipPkgs
运行VS2019可以防止发生此问题,并且项目可以正常加载。但是,我找不到问题的来源

还有谁知道是什么原因造成的吗?我希望能够在C#项目上工作,而不必每次都通过命令行运行VS

还有谁知道这是什么原因吗?我希望能 在C#项目上工作,而不必每次都通过命令行运行VS

不确定您以前对VS做了什么。可能是由于某些第三方集成工具、VS扩展或某些VS设置造成的

建议

请尝试以下步骤:

1)确保您的VS2019已安装这两个工作负载

2)检查系统环境变量PATH并确保其值
C:\Program Files\dotnet\
没有其他空格键

另外,检查是否有环境变量MSBuildSDKsPath,如果有,则应检查其值是否存在,并输入路径进行检查。如果不存在,则应修改以使用已存在的地址

如果MSBuildSDKsPath不存在,则应添加它并将其值设置为

C:\Program Files\dotnet\sdk\3.1.xxx\Sdks
确保路径存在于您的电脑下

非常重要:不要在变量值中使用引号,并以“.”结尾,因此请检查每个环境,确保没有乱码

3)打开VS IDE,单击菜单扩展-->管理扩展,进入已安装的扩展,然后禁用任何第三方扩展,以检查问题是否由它们引起

4)使用工具重置所有VS设置-->导入和导出设置-->重置所有设置或只运行
devenv/Resetsettings

5)或更新至最新版本(如果有任何更新)

6)删除解决方案文件夹下的
.vs
隐藏文件夹、
bin
obj
文件夹,然后再次测试

================================================

除了之外,您还可以直接将开关添加到VS图标中的
/ResetSkipPkgs
,这样每次打开VS时,它都会同时运行
/ResetSkipPkgs

右键单击VS2019快捷方式图标-->属性-->快捷方式-->

/ResetSkipPkgs
添加到

单击应用确定以启用它

注意:当您使用它时,您应该通过单击该图标打开VS,而不是在不支持该功能的VS安装程序下启动它)


如果您在“开始”菜单中启动VS2019,您应该通过我在
C:\ProgramData\Microsoft\Windows\start Menu\Programs
中的功能修改快捷方式。请尝试创建一个新项目,并测试问题是否仍然存在?嗨,James,有关于此问题的任何更新吗?请检查我的答案是否有助于您处理此问题。如果有帮助,请不要使用或设置为。如果没有,请随时通知我们:)奇怪的是…我遇到了这个问题。我最近编辑了路径,但当我使用“Windows终端”中的“dotnet run“应用程序。一切正常。这似乎是一个VS2019的东西它是路径变量!它完全丢失了dotnet路径,并且有一个空白变量,其中也只有空格,这是没有帮助的。添加到您建议的路径中,现在一切似乎都很好,谢谢!