Command line 如何确保vsvars32.bat已运行

Command line 如何确保vsvars32.bat已运行,command-line,visual-c++-2005,Command Line,Visual C++ 2005,我有一个使用MSVC2005的构建过程。由于设置了额外的变量,只有从VisualStudio命令提示符运行,而不是从常规命令提示符运行时,它才能正常工作。很容易运行错误类型的提示符,然后得到模糊的错误消息,所以我试图避免这种情况。我不想将常规命令提示符更改为始终调用vsvars32.bat,因为我并不总是希望这样,但我想添加一条消息,建议使用Visual Studio命令提示符。为此,我编写了一个BAT文件 如果“%VSINSTALLDIR%”==“echo”需要Visual Studio命令提

我有一个使用MSVC2005的构建过程。由于设置了额外的变量,只有从VisualStudio命令提示符运行,而不是从常规命令提示符运行时,它才能正常工作。很容易运行错误类型的提示符,然后得到模糊的错误消息,所以我试图避免这种情况。我不想将常规命令提示符更改为始终调用vsvars32.bat,因为我并不总是希望这样,但我想添加一条消息,建议使用Visual Studio命令提示符。为此,我编写了一个BAT文件

如果“%VSINSTALLDIR%”==“echo”需要Visual Studio命令提示符吗

但是,这也会显示在Visual Studio命令提示符中,因为它在vsvars32.bat之前被调用

有人知道如何将消息添加到普通命令提示符而不是VisualStudio2005命令提示符吗?从VisualStudio命令提示符的设置方式来看,我怀疑这是不可能的


谢谢。

为什么不在构建过程中执行
vsvars32.bat
?另一个选项是使用类似于vs\vsvars.bat-IIRC的
cmd.exe/k路径显式生成shell,
/k
选项使shell执行参数并保持打开状态