【发布时间】:2011-04-14 09:23:26
【问题描述】:
在vbscript中,如何在当前的cmd提示窗口中运行批处理文件或命令,
无需启动新进程。
例如。根据 script56.chm (显然是 vbscript 帮助)
Windows 脚本宿主
运行方法(Windows 脚本宿主)
“在新进程中运行程序”
所以如果我有使用它的代码,例如一个 VBS 文件和一个 BAT 文件。 环境变量 g 的值为 abc g=abc 从那个命令窗口, VBS 文件调用 BAT 文件与 windows 脚本主机运行。 bat 进程设置 g=z。并完成.. vbs 进程完成。 环境变量保持不变,为 g=abc。
我知道 CreateObject("Wscript.Shell").Run "c:\test.bat", 0 使用 1 而不是 0 时会启动一个新窗口。(因为 0 隐藏了窗口)
我该怎么做 - 在调用 vbs 的同一 cmd 环境中从 vbs 运行 bat 文件,因此更改会影响调用它的 cmd 环境吗? -在这两个窗口的情况下,我如何从批处理文件中访问父cmd窗口的环境?
【问题讨论】:
-
那很好,这是一个与相关信息类似的问题。
-
这里最简单的解决方案是不要混合技术。放弃批处理文件并在 VBScript 中完成所有工作。
标签: command-line vbscript batch-file cmd environment-variables