kunal-chowdhury.com

Could not run the "GenerateResource" task because MSBuild could not create or connect


In case you are facing the following error MSB4017: Could not run the "GenerateResource" task because MSBuild could not create or connect, while building your project/solution in Visual Studio, this could be because the build system is running out of the build process.

 

To resolve this error, there could be two different approaches. In this quick note, sharing both the solutions for your easy reference.

 

ERROR MSB4017: Could not run the

 

While building projects/solutions in Visual Studio, the build may break with the following error log:

ERROR MSB4017: Could not run the "GenerateResource" task because MSBuild could not create or connect to a task host with runtime "CLR2" and architecture "x86". Please ensure that (1) the requested runtime and/or architecture are available on the machine, and (2) that the required executable "C:\Program Files (x86)\MSBuild\14.0\bin\MSBuildTaskHost.exe" exists and can be run.

This may happen when the build system is running out of the build process. This is a feature introduced in Visual Studio 2012 and the error can happen in older versions too. To resolve this error, you need to disable the out of process task host.

 

How to resolve the issue?

To resolve it, go to all your .csproj file where the error is occuring and add the following line under the default property group:

 

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

 

Alternative approach to resolve the issue

Alternatively, you can perform the following steps to disable the out of process task host for all users in that system:

  • Click on the Start button.
  • Right-click on Computer and then navigate to Properties | Advanced system settings.
  • Click Environment Variables... button to open the dialog.
  • Now, under the System variables panel, click New... button.
  • Enter the Variable name as DISABLEOUTOFPROCTASKHOST, and enter the Variable value as 1.
  • Click OK | OK | OK to save the configurational details.
  • You may have to restart the system in order to apply the configurational changes.

 

 



Kunal Chowdhury
If you have come this far, it means that you liked what you are reading (Could not run the "GenerateResource" task because MSBuild could not create or connect).
Why not reach little more and connect with me directly on Twitter, Facebook, Google+ and LinkedIn. I would love to hear your thoughts and opinions on my articles directly.

Don't forget to share your feedback/queries in the comment section below.