捕获Wscript.Quit的退出码
生活随笔
收集整理的這篇文章主要介紹了
捕获Wscript.Quit的退出码
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
| 1.vbs代碼: WScript.Sleep 1000 WScript.Echo "test" WScript.Quit 5| 2.vbs代碼: Dim WshShell, oExec Set WshShell = CreateObject("WScript.Shell") Set oExec = WshShell.Exec("wscript.exe 1.vbs") Do While oExec.Status = 0 ???? WScript.Sleep 100 Loop WScript.Echo oExec.ExitCode 如此就可以捕獲1.vbs的退出碼為5,2.vbs中的sleep語句是等待1.vbs執(zhí)行的,去掉2中的sleep語句會顯示為0而不是5了。 順便說一下,Exec函數(shù)具有很多Run函數(shù)不具有的功能,Exec函數(shù)返回的是一個(gè)對象,故而具有更多功能(見下面),恰恰Run函數(shù)返回的僅僅是個(gè)數(shù)字,代表運(yùn)行結(jié)果即返回值,所以2.vbs的代碼當(dāng)然也可以寫成如下: Dim WshShell, oExec?????????????????????????? Set WshShell = CreateObject("WScript.Shell")?? WScript.Echo WshShell.Run("wscript.exe ""C:\Documents and Settings\patrol\桌面\1.vbs""",,True) 注意這里1.vbs要使用絕對地址了,因?yàn)閃script.exe默認(rèn)其所在的目錄為當(dāng)前目錄;另外一定要使用True。 附記:WshExec類具有屬性ExitCode,ProcessID,Status,StdErr,StdIn,StdOut以及一個(gè)函數(shù)Terminate,這些屬性和函數(shù)都很好理解。 Status屬性具有三個(gè)值: Const WshFailed = 2 Const WshFinished = 1 Const WshRunning = 0 關(guān)于Run的用法可以參見http://hi.baidu.com/patrolsun/blog/item/1695eb1fc851f608304e15ca.html |
轉(zhuǎn)載于:https://blog.51cto.com/officevba/243583
總結(jié)
以上是生活随笔為你收集整理的捕获Wscript.Quit的退出码的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 项目感受(1)
- 下一篇: Js中Date的应用