我的应用程序不断收到此错误(顺便说一句,我正在使用 VS 2013、VB.NET 和 Windows 8.1):
无法运行“GenerateResource”任务,因为 MSBuild 无法创建或连接到运行时“CLR2”和体系结构“x86”的任务主机。请确保 (1) 所请求的运行时和/或体系结构在计算机上可用,并且 (2) 所需的可执行文件“C:\Program Files (x86)\MSBuild .0 in\MSBuildTaskHost.exe”存在并且可以运行。
该应用程序适用于 .NET 3.5(3.5 及更低版本会出现此错误)。 我尝试再次运行该应用程序。有时,它有效;有时,它有效。有时,错误会再次出现。
我已经尝试在 Google 上查找答案,他们给我的答案是:“你的构建的用户名太长”(他们说 20 个或更多字符会导致错误),但事实并非如此。我的用户名只有 5 个字符。不管怎样,我不认为我的构建的用户名长度与它有任何关系;这没有任何意义。
有人知道3.5及以下版本有什么问题吗?谢谢你。
这解决了我机器上的问题:
要解决此问题,请转到 csproj 文件并在默认属性组下添加以下行:
<PropertyGroup>
...
<DisableOutOfProcTaskHost>true</DisableOutOfProcTaskHost>
</PropertyGroup>
找到这里。
清理和重建解决方案对我有用。
在每个项目中添加这个是一项繁琐的任务。所以你可以在环境变量中设置它。
单击“开始”>> 右键单击“计算机”>>“属性”>>“高级系统设置”>> 单击“环境变量”按钮打开对话框,然后在“系统变量”部分下,单击“新建...”按钮,键入变量名称 = DISABLEOUTOFPROCTASKHOST,然后输入变量值 = 1,然后单击确定。
更多这里
顺便说一句,我正在使用 VS 2013、VB.NET 和 Windows 10(64 位)
只需更改 XML 属性,服务:.NET Framework 4.6 而不是 .Net Framework 2.0(默认)
对我来说工作得很好。
我尝试添加以下内容,但没有成功
<PropertyGroup>
...
<DisableOutOfProcTaskHost>true</DisableOutOfProcTaskHost>
</PropertyGroup>
这为我解决了这个问题,添加与环境变量相同的内容
DisableOutOfProcTaskHost=true
我在尝试构建示例解决方案时遇到了此错误,该解决方案包含在安装在
C:\Program Files\
下的某些软件中。 Visual Studio 提示我使用提升的权限重新启动(就像在“安全”位置打开解决方案时所做的那样),但是构建失败并显示 OP 的错误消息。
将解决方案复制到“普通”文件夹(例如 C:\Temp)为我解决了这个问题。
我最近尝试在 VS2013 中打开一个旧的 VS2010 vb 项目,刚刚遇到了这个问题。我是这样解决的:
我的下一次项目重建成功了。
幸运的是,我能够观察 .vbproj 文件在版本控制中的变化,并看到它添加了以下行(尽管最初已经设置了复选框,但以前没有):
<UseVSHostingProcess>true</UseVSHostingProcess>
这里的答案都不适合我。我必须以管理员身份运行 Visual Studio。希望这对将来的人有帮助!
如果您不知道如何在 Windows 上以管理员身份运行程序,请单击此链接。