Howdy, у меня возникла проблема с запуском NAnt script, который использовался для правильной сборки моего веб-сайта на основе .NET. При компиляции с VS2008 и связанными с ним инструментами. Недавно я обновил все файлы проекта/решения до VS2010, и теперь моя сборка завершилась с ошибкой:
[ВЫПЛНЫ] C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Microsoft.Common.targets(2249,9): Ошибка MSB3086: задача не могла найти "sgen.exe" с использованием S dkToolsPath "или раздел реестра" HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDK\Windows\v7.0A ". Убедитесь, что Установлен SdkToolsPath и инструмент существует в правильном процессоре конкретное местоположение в рамках SdkToolsPath и что Microsoft Windows SDK установлен
Теперь у меня есть предыдущие версии (.Net 3.5) SDK Windows, установленные на сервере сборки, и полная инфраструктура .NET 4.0 установлена, но я не сталкивался с конкретной версией .Net 4.0 Windows SDK.
После нескольких экспериментов и исследований я, наконец, просто установил новую переменную окружения "SDKToolsPath" и указал ее на копию sgen.exe в моей папке sdk для Windows 6.0. Это породило ту же ошибку, но мне удалось заметить, что даже несмотря на то, что переменная окружения SDKToolsPath установлена IS (подтвердил, что я могу "эхо" ее в командной строке, и она имеет ожидаемое значение), сообщение об ошибке кажется, что оно не читается (обратите внимание на пустые кавычки).
Большая часть информации, которую я нашел, - это .Net 3.5 (или ранее). Не так много 4.0. Поиск кода ошибки MSB3086 тоже ничего не принес. Любая идея, что это может быть?
Скотт