wscript 有哪些常用命令和方法?
WScript 除了 Echo 之外,还有以下常用命令和方法:
-
CreateObject- 作用:创建 COM 对象实例,用于调用系统功能或第三方应用程序的自动化接口。
- 示例:
Set objShell = WScript.CreateObject("WScript.Shell") ' 创建 Shell 对象 objShell.Run "notepad.exe", 1, True ' 用记事本打开文件
-
Quit- 作用:终止脚本执行,可返回错误代码(用于批处理中判断脚本执行结果)。
- 示例:
WScript.Quit 0 ' 正常退出,返回代码 0
-
Sleep- 作用:暂停脚本执行指定毫秒数,常用于延迟操作。
- 示例:
WScript.Sleep 3000 ' 暂停 3 秒
-
Arguments(命令行参数处理)- 作用:通过
WScript.Arguments集合获取脚本启动时传入的参数。 - 示例:
' 假设脚本通过命令行调用:cscript script.vbs /name:Test If WScript.Arguments.Named.Exists("name") Then WScript.Echo "参数值为: " & WScript.Arguments.Named("name") End If
- 作用:通过
-
GetObject- 作用:获取已存在的 COM 对象或文件中的对象(如 Excel 文件、Word 文档)。
- 示例:
Set xlApp = GetObject(, "Excel.Application") ' 连接已运行的 Excel 实例
-
ConnectObject/DisconnectObject- 作用:将对象的事件绑定到脚本中的函数(需配合
WScript的事件处理机制)。 - 示例:
Set objNetwork = WScript.CreateObject("WScript.Network") WScript.ConnectObject objNetwork, "Network_" ' 绑定事件前缀 Sub Network_OnComputerNameChanged(newName) WScript.Echo "计算机名已更改为: " & newName End Sub
- 作用:将对象的事件绑定到脚本中的函数(需配合
-
StdOut/StdErr(仅限 CScript 模式)- 作用:在命令行模式(
cscript.exe)下重定向输出到控制台,替代Echo的对话框模式。 - 示例:
' 需通过 cscript 运行 WScript.StdOut.WriteLine "这是标准输出" WScript.StdErr.WriteLine "这是错误输出"
- 作用:在命令行模式(
-
SpecialFolders- 作用:通过
WScript.Shell对象的SpecialFolders属性访问系统特殊文件夹(如桌面、开始菜单)。 - 示例:
Set objShell = WScript.CreateObject("WScript.Shell") desktopPath = objShell.SpecialFolders("Desktop") ' 获取桌面路径
- 作用:通过
-
Environment- 作用:通过
WScript.Shell对象的Environment属性管理系统或用户环境变量。 - 示例:
Set objEnv = objShell.Environment("Process") ' 获取当前进程环境变量 objEnv("TEMP") = "C:\CustomTemp" ' 修改临时目录
- 作用:通过
-
Run/Exec(通过WScript.Shell)- 作用:执行外部程序或命令,
Run简单启动程序,Exec提供更精细的输入/输出流控制。 - 示例:
objShell.Run "cmd /c dir", 0, True ' 隐藏窗口执行命令并等待完成 Set objExec = objShell.Exec("ping 127.0.0.1") ' 获取命令输出流
- 作用:执行外部程序或命令,

浙公网安备 33010602011771号