При сборке с использованием Visual Studio 2013 GenerateFakes выполняется успешно, он использует тот же путь к тому же целевому файлу.
При сборке через MSBuild 12.0 (та же версия поставляется с Visual Studio 2013) я получаю следующие две ошибки.
Ошибка №1
C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v12.0\Fakes\Microsoft.QualityTools.Testing.Fakes.targets(128,5): error MSB4127: The "GenerateFakes" task could not be instantiated from the assembly "C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v12.0\Fakes\Microsoft.QualityTools.Testing.Fakes.Tasks.dll". Please verify the task assembly has been built using the same version of the Microsoft.Build.Framework assembly as the one installed on your computer and that your host application is not missing a binding redirect for Microsoft.Build.Framework. Unable to cast object of type 'Microsoft.QualityTools.Testing.Fakes.GenerateFakes' to type 'Microsoft.Build.Framework.ITask'.
Ошибка №2
C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v12.0\Fakes\Microsoft.QualityTools.Testing.Fakes.targets(128,5): error MSB4060: The "GenerateFakes" task has been declared or used incorrectly, or failed during construction. Check the spelling of the task name and the assembly name.
Я мог успешно построить с помощью MSBuild 11.0 на старой машине, которая использовала Visual Studio 2012.
Может ли проблема быть связана с каким-то отсутствующим перенаправлением привязки?
Следующая ссылка содержит аналогичную ошибку, но для другой платформы: http://social.msdn.microsoft.com/forums/vstudio/en-US/2772a075-4e2f-42af-9e7a-2228b794368e/msbuild-crashes.-с-задачей-сообщения-неможетбытьсоздано-исключение
Только что заметил, что удаление папки FakeAssemblies во всех проектах решает проблему, однако, как только я снова создаю в Visual Studio, ошибка возвращается.