如何区分 VBscript 是从命令行运行还是在窗口中单击它?

rob*_*bie 5 vbscript scripting command-line

我想要做的就是区分由命令行运行的程序或通过单击窗口中的 test.vbs 文件。

如果您通过键入运行该脚本C:\testFolder\test.vbs在命令提示符,的话,我想程序不同于如果你双击了运行test.vbstestFolder

是否有一些系统变量可以用来区分这两种情况?我首先尝试使用WScript.Fullname来确定路径名是以 cscript 还是 wscript 结尾。但这并不奏效。

任何想法都非常感谢。

Joe*_*sky 5

你可以尝试这样的事情:

Set WshShell = CreateObject("WScript.Shell")
Set objEnv = WshShell.Environment("Process")

msgbox objenv("PROMPT")
Run Code Online (Sandbox Code Playgroud)

一般来说,当从命令提示符运行时,PROMPT 将设置为类似 $P$G 的内容,但当您直接运行 .VBS 文件时,它会留空。