MSBUuild ищет "... \ v4.0 \ V110 \ Microsoft. Cpp .Default.props", когда у нас есть "... / \ v4.0 \ V140 \ Microsoft. Cpp .Default.props" - PullRequest
0 голосов
/ 16 апреля 2020

При создании проекта "Common.vcxproj" мы получаем сообщение об ошибке: ошибка MSB4019: импортированный проект "C: \ Program Files (x86) \ MSBuild \ Microsoft.Cpp \ v4.0 \ V110 \ Microsoft . Cpp .Default.props "не найден. Убедитесь, что путь в объявлении правильный, и что файл существует на диске.

На машине установлено средство «C: \ Program Files (x86) \ MSBuild \ Microsoft.Cpp \ v4 .0 \ V140 \ Microsoft. Cpp .Default.props ", но .vcxproj ищет папку" V110 ". В файле проекта "" и у нас есть раздел реестра = "VCTargetsPath" и значение = $ ([MSBuild] :: ValueOrDefault ('$ (VCTargetsPath)', '$ (MSBuildExtensionsPath32) \ Microsoft.Cpp \ v4.0 \ V140 \ '))

Вопрос в том, почему MSBUuild ищет "... \ v4.0 \ V110 \ Microsoft. Cpp .Default.props", когда мы имеем "... / \ v4.0 \ V140 \ Microsoft. Cpp .Default.props "?

Спасибо

1 Ответ

0 голосов
/ 17 апреля 2020

Вопрос в том, почему MSBUuild ищет "... \ v4.0 \ V110 \ Microsoft. Cpp .Default.props", когда у нас есть "... / \ v4.0 \ V140 \ Microsoft. Cpp .Default.props "?

Пожалуйста, попробуйте это:

1) , пожалуйста, проверьте редактор регистра и введите оба значения HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\MSBuild\ToolsVersions\14.0 и HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSBuild\ToolsVersions\14.0, а затем убедитесь, что он использует путь v140, поскольку эта ссылка показывает.

2) Щелкните правой кнопкой мыши свой проект в VS 2015 IDE -> Properties -> Configuration Properties -> General -> изменить Platform Toolset на v140.

3) Кроме того, проверьте, определите ли вы VCTargetPath в Свойствах проекта (щелкните правой кнопкой мыши по проекту) -> xxxxx -> Командная строка

4) Запустите npm install -g --production windows-build-tools в Powershell от имени администратора

5) Если это не работает, пожалуйста, go вернитесь к первому шагу, а затем измените VCTargetsPath на C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\ напрямую.

Или запустите [Environment]::SetEnvironmentVariable("VCTargetsPath", "C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140", "Machine") в powershell.

Надеюсь, это поможет вам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...