我有几个应用程序要跟随另一个执行。
我该怎么做? 我试过了,但第二项任务从未执行过。
on error resume next
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run """C:\Program Files\my folder\do task1.exe.vbs"""
WshShell.Run """C:\Program Files\my folder\do task2.exe.vbs"""
msgbox "Finished tasks"
更新: 在WshShell.Run click here
上找到的注释答案 0 :(得分:3)
你缺少什么(根据ISDi的答案)是Run的第三个参数,它告诉它在继续执行代码之前不要等待程序退出(false)。
尝试(如果你想把你的代码放在子程序中,如果重复活动有良好的编码实践):
'Place all of the following in a .vbs file
Sub RunApplication(ByVal sFile)
Dim WShell : Set WShell = CreateObject("WScript.Shell")
WShell.Run Chr(34) & sFile & Chr(34), 8, false
End Sub
'Executing apps.
RunApplication "C:\Program Files\my folder\task1.exe"
RunApplication "C:\Program Files\my folder\task2.exe"
答案 1 :(得分:3)
WScript.shell的Run方法有一个可选参数,可以暂停脚本的执行,直到Run方法返回。
尝试:
WshShell.Run("""C:\YourPathTo\task1.exe""", 1, true)
上面第一行中的第三个参数告诉解释器等到此任务退出后再继续执行脚本的下一行。
-isdi -