Building Visual Studio 2008 projects (.NET 3.5 or lower) in Visual Studio the IDE or with Visual Studio 2010 (Msbuild .NET 4.0) or Team Build 2010 can result in errors listed in this article. Below is a compressive list of issues and their current respective resolutions.
Issue #1
When you try to build a Microsoft Visual C++ 2010 project and your user name is exactly 20 characters long, you receive an error message that resembles the following:
Error 1 error MSB4014: The build stopped unexpectedly because of an internal failure
Microsoft.Build.Exceptions.BuildAbortedException: Build was canceled. MSBuild.exe could not be launched as a child node as it could not be found at the location "<System Volume>:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe". If necessary, specify the correct location in the BuildParameters, or with the MSBUILD_EXE_PATH environment variable
Resolution
Hotfix KB2298853: MSBuild fails with error MSB4014 when building VS 2010 projects
https://connect.microsoft.com/VisualStudio/Downloads/DownloadDetails.aspx?DownloadID=31354&wa=wsignin1.0
More Information
FIX: Visual Studio 2010 error: "Error 1 error MSB4014: The build stopped unexpectedly because of an internal failure"
http://support.microsoft.com/kb/2298853
Issue #2
Visual Studio 2008 (.NET 3.5) Workflow project that contain declarative rules do not build with Visual Studio 2010 Msbuild (.NET 4.0) or with Team Build 2010.
Consider the following scenario:
· You have a Windows Workflow project that uses some declarative rule conditions from an out-of-the-box activity in Microsoft Visual Studio 2008.
· You try to build the project by using the MSBuild command in the Microsoft .NET Framework 4.0 or by using Microsoft Team Foundation Build 2010.
In this scenario, the build process crashes.
Resolution
Hotfix KB2249629: FIX: Build for a Windows Workflow project that contains Declarative Rules may crash when you try to build the Visual Studio 2008-based project by using the MSBuild command in the .NET Framework 4.0 or by using Team Foundation Build 2010
http://support.microsoft.com/default.aspx?scid=kb;en-US;2249629
Issue 3
Unable to build Visual Studio 2008 (.NET 3.5) Windows Workflow projects using Visual Studio 2010 Msbuild (.NET 4.0) or with Team Build 2010
Consider the following scenario:
· You create a Windows Workflow project in Microsoft Visual Studio 2008
· You build the project by using the MSBuild command in the Microsoft .NET Framework 4.0 or by using Microsoft Team Foundation Build 2010
In this scenario, the build process crashes
Resolution
Hotfix KB2023579 - FIX: Build crashes and various errors occur when you use the MSBuild command in the .NET Framework 4.0 or in Team Foundation Build 2010 to build a Windows Workflow project in Visual Studio 2008
http://support.microsoft.com/default.aspx?scid=kb;en-US;2023579
Issue 4
Unable to Build Visual Studio 2008 BizTalk 2009 projects with Msbuild 4.0 with Visual Studio 2010 Msbuild (.NET 4.0) or with Team Build 2010
Consider the following scenario:
· You create a Microsoft BizTalk 2009 project in Microsoft Visual Studio 2008.
· The BizTalk 2009 project contains a map that references a schema in another project.
· You use Microsoft Visual Studio Team Foundation Server (TFS) 2010 to build and deploy the project.
In this scenario, you receive an error message that resembles the following:
<MapName.btm>: Exception Caught: The map contains a reference to a schema node that is not valid. Perhaps the schema has changed. Try reloading the map in the BizTalk Mapper. The XSD XPath of the node is: /*[local-name()='<Schema>']/*[local-name()='FaultMessage']/*[local-name()='Header']/*[local-name()='Application']
Resolution
Hotfix KB 2406405 "<MapName.btm>: Exception Caught" error message when you try to use Visual Studio Team System 2010 TFS to build and deploy a BizTalk 2009 project that contains a map that references a schema in another project
http://support.microsoft.com/kb/2406405/en-us/
Issue 5
Error when compiling .resx file. Error RG0000: Could not load file or assembly .... An attempt was made to load a program with an incorrect format.
Resolution
There are several work arounds for this error depending on your specific build scenario. See the following post for Scenario’s and respective work-arounds:
ResGen.exe error: An attempt was made to load a program with an incorrect format
http://blogs.msdn.com/b/visualstudio/archive/2010/06/19/resgen-exe-error-an-attempt-was-made-to-load-a-program-with-an-incorrect-format.aspx
Building on Cross targeting scenarios and 64-bit MSBuild
http://blogs.msdn.com/b/visualstudio/archive/2010/05/07/building-on-cross-targeting-scenarios-and-64-bit-msbuild.aspx
Issue 6
MSBuild does not respect the /m (parallel builds) switch when building Visual Studio 2008 (.NET 3.5) projects that contain all or some VC++ projects when building with Visual Studio 2010 Msbuild (.NET 4.0) or with Team Build 2010. Note, instead of afinitizing using all the process all or most of the build is done on one processor.
Resolution
Upgrade the Visual Studio 2008 (.NET 3.5) project to Visual Studio 2010 (.NET 4.0). Or, use MSBuild 3.5 and Team Build 2008.
Issue 7
When compiling 2008 projects using Msbuild 4.0 (.NET 4.0) or Team Build 2010 projects you may get the following Warning and Error:
Error MSB6003: The specified task executable "ResGen.exe" could not be run. Access is denied
Resolution
This can be caused by malware on your computer. Scan your computer using several Anti-Virus and Anti-Spyware programs.
Issue 8
MSB6002: The command-line for the "ResGen" task is too long
Resolution
Reduce the path of the root project of the reference projects that may be listed in the error or warning message. See the following for more information:
If your build fails with “MSB6002: The command-line for the “ResGen” task is too long”
http://blogs.msdn.com/b/visualstudio/archive/2010/02/16/if-your-build-fails-with-msb6002-the-command-line-for-the-resgen-task-is-too-long.aspx