新构建服务器的问题

时间:2013-01-21 19:10:08

标签: visual-studio 64-bit tfs2012 configuration-files msbuild-4.0

移动构建服务器后,出现以下错误:

C:\Windows\Microsoft.NET\Framework64\v3.5\Microsoft.Common.targets (1682): Could not run the "GenerateResource" task because MSBuild could not create or connect to a task host with runtime "CLR2" and architecture "x64". Please ensure that (1) the requested runtime and/or architecture are available on the machine, and (2) that the required executable "MSBuildTaskHost.exe" exists and can be run.

我的配置说明了这一点:

<ConfigurationToBuild Include="Release|Any CPU">
    <FlavorToBuild>Release</FlavorToBuild>
    <PlatformToBuild>Any CPU</PlatformToBuild>
 </ConfigurationToBuild>

我错过了什么?

6 个答案:

答案 0 :(得分:12)

要解决此问题,请转到.csproj file并使用记事本打开。

在默认属性组下添加以下行:

<PropertyGroup>
      <DisableOutOfProcTaskHost>true</DisableOutOfProcTaskHost>
</PropertyGroup>

项目现在应该编译。

答案 1 :(得分:8)

就我而言,我在尝试在32位Windows 7计算机上构建解决方案时收到了该错误消息。为我解决错误的方法是右键单击VS中的项目,选择属性,然后转到Build选项卡。在这里,我将“平台目标”从“任何CPU”更改为“x86”。 HTH

答案 2 :(得分:3)

另一种方法是执行以下操作

点击开始 - &gt;&gt;右键单击计算机 - &gt;&gt;属性 - &gt;&gt;高级系统设置 - &gt;&gt;单击Environment Variables按钮打开对话框

然后在“系统变量”部分下,单击“新建...”按钮,键入 变量名= DISABLEOUTOFPROCTASKHOST,并键入变量值= 1,

然后单击“确定”。

这应该可以抑制此错误。

答案 3 :(得分:2)

您需要为正在使用的.NET版本安装.NET SDK。 这是.NET 3.5的链接 Where is the .net 3.5 SDK? 这是4.0的链接 http://www.microsoft.com/en-us/download/details.aspx?id=8279

安装Visual Studio也会安装正确的SDK,但对您来说可能不是一个好的选择。

我希望有所帮助。

答案 4 :(得分:2)

核心问题是64位可执行文件无法加载32位dll,反之亦然。

&#34;自动&#34;意思是 。 NET程序集将在运行时在平台之间切换,具体取决于当前运行的计算机上的平台。

因此使用&#34; Auto&#34;编译.NET程序集。加载一个32位的dll是一个等待发生的问题,这就是这个错误的全部内容。

要更正它,如果您不使用任何本机dll ,请转到每个托管项目的项目属性,并设置&#34;目标CPU&#34;与所有可用平台的当前选择&#34;平台&#34;相同。

如果您使用的是本机dll,则必须定义2个构建配置,一个用于32位,一个用于64位,链接(请参阅)正确版本的dll并根据目标计算机平台进行安装。

答案 5 :(得分:1)

我以管理员身份打开VS2010解决了这个问题。