При компиляции любого проекта C ++ с помощью Visual Studio 2010 Express я должен получить следующее поведение: сообщение о запуске сборки появляется в окне вывода, процессор поднимается почти до 100%, запускаются несколько процессов MSBuild.exe, длительная пауза (несколько минут), когда ничего не происходит, сборка прерывается следующим сообщением
xxx.vcxproj : error MSB4014: The build stopped unexpectedly because of an internal failure.
xxx.vcxproj : error MSB4014: 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 "c:\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.
xxx.vcxproj : error MSB4014: at Microsoft.Build.BackEnd.NodeManager.AttemptCreateNode(INodeProvider nodeProvider, NodeConfiguration nodeConfiguration)
xxx.vcxproj : error MSB4014: at Microsoft.Build.BackEnd.NodeManager.CreateNode(NodeConfiguration configuration, NodeAffinity nodeAffinity)
xxx.vcxproj : error MSB4014: at Microsoft.Build.Execution.BuildManager.PerformSchedulingActions(IEnumerable`1 responses)
xxx.vcxproj : error MSB4014: at Microsoft.Build.Execution.BuildManager.HandleNewRequest(Int32 node, BuildRequestBlocker blocker)
xxx.vcxproj : error MSB4014: at Microsoft.Build.Execution.BuildManager.IssueRequestToScheduler(BuildSubmission submission, Boolean allowMainThreadBuild, BuildRequestBlocker blocker)
Microsoft признала ошибку с таким поведением, когда ваше имя пользователя составляет 20 символов, но у меня намного короче.И само собой разумеется, что у меня есть msbuild.exe в нужном месте.
Единственная найденная мною обходная задача - переключаться на другое приложение во время сборки.Но я надеюсь, что у кого-то есть лучший обходной путь.
MTIA John