【发布时间】:2013-09-30 17:52:34
【问题描述】:
我在注册表中使用以下命令从 Windows 资源管理器的上下文菜单本地运行 vbscript:
cmd /T:1F /K "cscript.exe //nologo "C:\Some Path\Some Folder\MyScript.vbs" "%1""
我使用/K 开关有两个原因:在脚本错误的情况下保持控制台窗口打开,并更改控制台的前后颜色(这实际上是通过/T 开关完成的,但由于某种我不明白的原因,当使用/C 开关时,颜色会恢复为默认值。
我的问题:如何在正常执行结束时关闭主机控制台窗口(附加到“cmd.exe”进程)? WScript.Quit 显然返回到控制台提示符。我考虑过基于 CommandLine 对 Win32_Process 的 WMI 查询,但如果使用相同的参数(即文件)多次调用脚本,这将不起作用。例如,有没有办法获得最顶层的父进程的 id,然后我可以用它来终止?
【问题讨论】: