Как убедиться, что vsvars32.bat запущен - PullRequest
1 голос
/ 14 декабря 2009

У меня есть процесс сборки с использованием MSVC 2005. Он работает правильно только при запуске из командной строки Visual Studio, а не из обычной командной строки, из-за установленных дополнительных переменных. Слишком легко запустить неправильный тип приглашения и затем получить неясные сообщения об ошибках, поэтому я пытаюсь избежать этого. Я не хочу менять свою обычную командную строку, чтобы она всегда вызывала vsvars32.bat, так как я не всегда этого хочу, но я хотел добавить сообщение с предложением использовать командную строку Visual Studio. Для этого я написал BAT-файл

if "% VSINSTALLDIR%" == "" echo Вам нужна командная строка Visual Studio?

Однако это также отображается в командной строке Visual Studio, поскольку она вызывается раньше, чем vsvars32.bat.

Кто-нибудь знает, как добавить сообщение в обычную командную строку, но не в командную строку Visual Studio 2005? Я подозреваю, что из-за настройки командной строки Visual Studio это невозможно.

Спасибо.

1 Ответ

2 голосов
/ 14 декабря 2009

Почему бы не выполнить vsvars32.bat в процессе сборки? Другой вариант - явное создание оболочки, используя что-то вроде cmd.exe /k path-to-vs\vsvars.bat - IIRC, опция /k заставляет оболочку выполнять аргумент и оставаться открытой.

...