如何创建快捷方式来设置环境变量然后启动程序而不让 CMD 窗口保持打开状态?

如何创建快捷方式来设置环境变量然后启动程序而不让 CMD 窗口保持打开状态?

可能重复:
如何创建执行时不显示命令提示符的 Windows 批处理文件?

我想在任务栏上创建一个快捷方式,用于设置环境变量,然后启动程序。目前我的快捷方式指向一个 .bat 文件,其中包含以下几行:

set RESGENTOOLARCHITECTURE=Managed32Bit
"C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe"

但这会使 CMD 窗口在启动程序(在本例中为 Visual Studio)期间保持打开状态。有没有办法可以做到这一点而不打开 CMD 窗口或至少不让它保持打开状态?

我一般不想在我的计算机上设置环境变量,只想在运行这个程序时设置。

谢谢!

答案1

链接的答案是正确的,您不能使用批处理文件。

我将创建一个运行 PowerShell 脚本的批处理文件(PowerShell 至少在可预见的未来会继续存在)。以下是批处理文件:

set RESGENTOOLARCHITECTURE=Managed32Bit
powershell c:\temp\OpenVisualStudio.ps1

以下是 PS1 PowerShell 脚本文件的内容:

start-process "C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe

然后随便命名,但我会给它们起相同的名字(扩展名除外),并将它们放在同一个位置。我想将它们合并到一个文件中,但设置变量很麻烦。

我对此进行了测试,尽管我用它来打开 Word 2010。

答案2

如何运行 bat 文件而不显示命令窗口:

创建一个名为“runhidden.vbs”的新文件,使用文本编辑器编辑它并插入以下行:

CreateObject("Wscript.Shell").Run """" & WScript.Arguments(0) & """", 0, False

设置快捷方式来执行此操作:

wscript.exe runhidden.vbs yourbatfile.bat

当然,路径名应该添加到运行隐藏文件你的bat文件如果需要的话。这将执行 yourbatfile.bat 而不显示命令窗口。

编辑:澄清一下,“runhidden”是一个完全任意的名称。您可以按自己想要的方式命名。

相关内容