vbScript中WScript.Shell对象的run和exec
2010-01-28 00:00
405 查看
方法声明:
Function Exec(ByVal Command As String) As WshExec
Function Run(ByVal Command As String, [ByVal WindowStyle], [ByVal WaitOnReturn]) As Integer
区别:
1返回值
run的返回值是一个整数,就是成功0或失败1 exec方法的返回值是对象,从返回对象中可以获得控制台输出信息和控制台错误信息,即StdOut和StdErr属性等。
如:
Dim oShell,exeRs
Set oShell = CreateObject("WSCript.shell")
commandLine = "xcopy.exe"
Set exeRs = oShell.Exec(commandLine)
errMsg = exeRs.StdErr.ReadAll()
stdMsg = exeRs.StdOut.ReadAll()
WScript.echo "errMsg:" & errMsg & "stdMsg:" & stdMsg
ret = oShell.run(commandLine, 0, true)
WScript.echo "run method return value:" & ret
Set oShell = Nothing
Set exeRs = Nothing
取控制台错误和控制台信息。
2 执行参数
Run 的后两个参数,一个是cmd窗口的风格,一个是是否等待执行完成。最后一个参数很有用,如果你希望等待本次cmd执行的程序结束后,在执行 run后面的语句,设置这个参数为true,否则后面的语句将不等待cmd窗口完成,直接运行。
另外,如果你使用exec 方法的时候,如果希望等待cmd中程序执行完后,在执行后面的语句,也可以通过下面的方法: oExec.StdErr.ReadAll()或者oExec.StdOut.ReadAll(),道理上也应该好理解,要得到输出的信息,肯定要cmd执行完后才会有输出的。
ret = oShell.run(“cmd”, 0, true)
有用的两个值0:不显示窗口 1:显示窗口
注意当执行命令带目录,目录名中有空格 记得要用""括起来 如: commandLine = Chr(34) & "C:\Program Files\aa.exe" & Chr(34) & "/i"
参数的详细信息可以参考
msdn http://msdn.microsoft.com/zh-cn/library/ateytk4a(en-us,VS.85).aspx http://msdn.microsoft.com/zh-cn/library/d5fk67ky(en-us,VS.85).aspx
Function Exec(ByVal Command As String) As WshExec
Function Run(ByVal Command As String, [ByVal WindowStyle], [ByVal WaitOnReturn]) As Integer
区别:
1返回值
run的返回值是一个整数,就是成功0或失败1 exec方法的返回值是对象,从返回对象中可以获得控制台输出信息和控制台错误信息,即StdOut和StdErr属性等。
如:
Dim oShell,exeRs
Set oShell = CreateObject("WSCript.shell")
commandLine = "xcopy.exe"
Set exeRs = oShell.Exec(commandLine)
errMsg = exeRs.StdErr.ReadAll()
stdMsg = exeRs.StdOut.ReadAll()
WScript.echo "errMsg:" & errMsg & "stdMsg:" & stdMsg
ret = oShell.run(commandLine, 0, true)
WScript.echo "run method return value:" & ret
Set oShell = Nothing
Set exeRs = Nothing
取控制台错误和控制台信息。
2 执行参数
Run 的后两个参数,一个是cmd窗口的风格,一个是是否等待执行完成。最后一个参数很有用,如果你希望等待本次cmd执行的程序结束后,在执行 run后面的语句,设置这个参数为true,否则后面的语句将不等待cmd窗口完成,直接运行。
另外,如果你使用exec 方法的时候,如果希望等待cmd中程序执行完后,在执行后面的语句,也可以通过下面的方法: oExec.StdErr.ReadAll()或者oExec.StdOut.ReadAll(),道理上也应该好理解,要得到输出的信息,肯定要cmd执行完后才会有输出的。
ret = oShell.run(“cmd”, 0, true)
有用的两个值0:不显示窗口 1:显示窗口
注意当执行命令带目录,目录名中有空格 记得要用""括起来 如: commandLine = Chr(34) & "C:\Program Files\aa.exe" & Chr(34) & "/i"
参数的详细信息可以参考
msdn http://msdn.microsoft.com/zh-cn/library/ateytk4a(en-us,VS.85).aspx http://msdn.microsoft.com/zh-cn/library/d5fk67ky(en-us,VS.85).aspx
相关文章推荐
- vbScript中WScript.Shell对象的run和exec使用心得
- WScript.Shell对象的 run()和exec()函数使用详解
- WScript.Shell对象的run和exec
- WScript.Shell对象的这两个方法Run和Exec的区别
- WScript.Shell对象的run和exec(脚本调用其他程序)
- VBS中WScript.Shell对象的run和exec的使用及区别
- VBS中WScript.Shell对象的run和exec的使用及区别
- WScript.Shell对象的run和exec
- WScript.Shell对象的 run()和exec()函数使用详解
- window WScript.Shell.run使用try.catch取不到出错信息要换用exec
- WScript.Shell 的run和exec在运行taskkill的区别
- 【技术贴】ActiveX 部件不能创建对象 Wscript.Shell,右键打开所在目录的批处理ba
- Wscript.Shell 对象详细介绍
- 利用WScript.Shell对象隐藏cmd命令行运行框的实现代码
- Wscript.Shell对象详细介绍!!(6)
- 如何卸载和安装Wscript.Shell,FSO和stream对象
- Wscript.Shell 对象详细介绍!!特好的东西
- Wscript.Shell 对象详细介绍
- Javascript中使用WScript.Shell对象执行.bat文件和cmd命令