Это потому, что запускаемые им пакетные файлы используются Set
для установки переменных среды ( C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\amd64\vcvars64.bat
это то, что запускается при запуске vcvarsall x64
).
Но Set
только устанавливает переменные для текущего сеанса командной строки. Вы должны использовать его, Setx
чтобы он «держался» между сеансами командной строки.
Для получения дополнительной информации, возможно, проверьте эти другие вопросы SU и ответы:
- Что такое PATH и другие переменные среды, и как я могу их установить или использовать?
- Переменная среды не прилипает
- Установите переменные окружения из командной строки - и заставьте их придерживаться глобально
- В чем разница между SETX и SET в переменных окружения в Windows
Редактировать после комментариев:
«Но заданные команды были в скрипте по умолчанию»
VCVarsAll предназначен для запуска среды для установки единственной сборки / действия, которое вы собираетесь выполнить, а не для их постоянной установки.
Visual Studio устанавливает специальные записи «командной строки» для доступа к инструментам (из вашей ссылки: «... и затем выберите одну из командных подсказок встроенного инструмента или кросс-инструмента.»), И эти специальные ярлыки командной строки запускают / пакетный файл, чтобы убедиться, что все установлено правильно, когда вы используете эти ярлыки.
Вы можете скопировать эти ярлыки с вашими собственными ...
Создайте новый ярлык для cmd /k "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" x64
, который запустит командный файл (используя x64 в качестве параметра среды), а затем оставьте окно командной строки открытым.
Затем используйте этот ярлык, чтобы открыть командную строку, если вы хотите использовать инструменты.