Vsvars32.bat в Visual Studio 2017

Поскольку установщик Visual Studio является новичком в версии Visual Studio 2017, я не могу найти компонент Visual С++, объясненный здесь.

Как мне перейти к vsvars32.bat в VS2017?

Ответ 1

VS2017 страдает от очень серьёзного повреждения места установки пути установки. Большинство проклятых глупых вещей, которые они сделали, это сделать название издания (Professional, Enterprise, возможно, Community) частью пути. Это затрудняет надежный поиск инструментов с одной машины на другую.

Существует одна переменная среды, которая, как я думаю, может решить проблему, переменная VSAPPIDDIR хранит путь к папке, где установлена ​​среда IDE (devenv.exe). Поэтому, если вы хотите запустить vcvars32.bat из события сборки, вы должны использовать

   call "%vsappiddir%..\..\VC\Auxiliary\Build\vcvars32.bat" x86

Обратите внимание, что vc, а не vs, vsvars32.bat больше не существует. Вы могли бы поддержать "Командная строка разработчика:

   call "%vsappiddir%..\tools\vsdevcmd.bat"

Но, судя по вашей ссылке, вы действительно хотите запустить утилиту editbin.exe:

   "%vsappiddir%..\..\VC\Tools\MSVC\14.10.25017\bin\HostX86\x86\editbin.exe" args...

Номер версии 14.10.25017 - это тоже не радость, нет реального понимания того, как это изменится с одного обновления на другое. Вероятно, это будет.

Ответ 2

Просто измените "vsvars32.bat" на "vsdevcmd.bat". Это совместимо, по крайней мере, с VS2015.

call "$(DevEnvDir)..\tools\vsdevcmd.bat"
editbin /largeaddressaware "$(TargetPath)"

Ответ 3

Ни один из упомянутых решений не работал у меня. После того, как моя голова разогрелась от ошибки "vsvars32.bat missing", я прошел через каждую строку и не было слишком "svcutil.exe".

Я подумал об этом, и это сработало. Я получил следующий путь на моей машине для SvcUtil.exe:

C:\Program Files (x86)\Microsoft SDK\Windows\v7.0A\Bin

Я установил путь в System Environment Variable и перезапустил мою Visual Studio на всякий случай, и это сработало.

Надеюсь, это поможет кому-то!

Edit: Very Strange - работает, когда у меня включена "облегченная загрузка решения". Как только я отключаю "Легкую загрузку решения" - он начинает давать мне ту же ошибку!