vbs Run方法和Exec方法

Run 方法:

Run方法有三个参数,
第一个参数是你要执行的程序的路径,
第二个参数是窗口的形式,0后台运行;1正常运行;2最小化;3最大化;缺省的话表示正常运行
第三个参数是表示这个脚本是等待还是继续执行,如果设为了True,脚本就会等待调用的程序退出后再向后执行。

例1:
Set ws = CreateObject(“WScript.Shell”)
ws.Run “notepad”,,True
ws.Run “iexplore”

例2:隐藏BAT执行窗口
Set ws = CreateObject(“WScript.Shell”)
ws.Run “x.bat”,0

例3:
Set ws = CreateObject(“WScript.Shell”)
ws.Run “cmd /c netstat -an>>x.txt”,0

例4:
Set ws = CreateObject(“WScript.Shell”)
ws.Run “taskkill /f /im iexplore.exe”,0

Exec 方法

例1:运行文件
Set ws = CreateObject(“WScript.Shell”)
ws.Exec “notepad c:/x.txt” ‘对于Exec应指明程序,此notepad是必须的

例2:运行程序>获取进程PID值>强行结束进程(没有Run+taskkill强:如在记事本未保存的情况下结束进程,Exec会出错,而Run不会)>判断进程是否在运行(这个功能不错)
Set ws = CreateObject(“WScript.Shell”)
Set e = ws.Exec(“notepad”)
MsgBox e.ProcessId
e.Terminate
WSH.Sleep 1000
MsgBox e.Status ‘0为运行,1为结束

例3:直接获取dos命令输出,dos窗口会闪一下,Exec没有窗口控制功能
Set ws = CreateObject(“WScript.Shell”)
Set e = ws.Exec(“ipconfig”)
MsgBox e.Stdout.ReadAll

例4:
Set ws = CreateObject(“WScript.Shell”)
Set e = ws.Exec(“cmd /c echo Hi”)
MsgBox e.Stdout.ReadAll

About 智足者富

http://chenpeng.info

发表评论

电子邮件地址不会被公开。 必填项已用*标注

您可以使用这些HTML标签和属性:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>