Когда я компилирую проект через PowerShell:
PS C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319>. \ MSBuild.exe "C: \ Пользователи \ Me \ repo \ Proj \ App.csproj "
, затем происходит сбой
C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ Microsoft.Common.targets (2015,5): ошибка MSB3091: выполнить запрос не удалось, так как «AxImp.exe» не был найден или не установлен правильный Microsoft Windows SDK. Задача ищет файл «AxImp.exe» в подкаталоге «bin» ниже расположения, указанного в значении InstallationFolder раздела реестра HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Microsoft SDKs \ Windows \ v8.0A \ WinSDK-NetFx40Tools-x86. Вы можете решить проблему, выполнив одно из следующих действий: 1) Установите Microsoft Windows SDK. 2) Установите Visual Studio 2010. 3) Вручную установите указанный выше раздел реестра в правильное расположение. 4) Укажите правильное местоположение в параметре «ToolPath» задачи. "
, но когда я делаю это через командную строку разработчика VS для VS 2019
**********************************************************************
** Visual Studio 2019 Developer Command Prompt v16.4.3
** Copyright (c) 2019 Microsoft Corporation
**********************************************************************
C:\Windows\System32>MSBuild.exe "C:\Users\Me\repo\Proj\App.csproj"
тогда он работает отлично!
Но, как вы видите, Current Path (папка MS Build) совершенно другой, поэтому я попытался выполнить это в PowerShell еще раз с VS Местоположение разработчика CMD:
PS C:\Windows\System32> cd "C:\Windows\System32"
PS C:\Windows\System32> MSBuild.exe "C:\Users\Me\repo\Proj\App.csproj"
MSBuild.exe : The term 'MSBuild.exe' is not recognized as the name of a cmdlet, function, script file, or operable prog
ram. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:1
+ MSBuild.exe "C:\Users\Me\repo\Proj\App.csproj" ...
+ ~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (MSBuild.exe:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
PS C:\Windows\System32>
Что происходит? Почему я могу прекрасно откомпилировать свои проекты из Developer CMD, в то время как я не могу сделать это с помощью Power Shell, и он кричит, что у меня нет Windows SDK?
Или какой MS Build (видимо, их несколько) мне следует использовать?