我想要.vbs脚本,打开多个大文件.vbs,我想一个接一个地打开.vbs,不让我,滞后在PC上。
0001.vbs,0002.vbs,0003.vbs,0004.vbs可以是不同的名称,如: Anna.vbs、Diana.vbs、Antony.vbs、Andy.vbs
示例:
run C:\0001.vbs
MsgBox "0001.vbs IS END"
Next Open run C:\0002.vbs
MsgBox YES NO
MsgBox "0002.vbs IS END"
Next Open run C:\0003.vbs
MsgBox YES NO
MsgBox "0003.vbs IS END"
Next Open run C:\0004.vbs
MsgBox YES NO
MsgBox "0004.vbs IS END"谢谢你的帮助。
发布于 2014-04-22 14:20:06
要让您在启动下一步之前等待每个子进程/..vbs,not使您等待每个子进程/..vbs,不使用.Run方法的第3个//true参数:
a.vbs
Option Explicit
Dim oWSH : Set oWSH = CreateObject("WScript.Shell")
Dim v
For v = 0 To 1
oWSH.Run "cscript.exe " & v & ".vbs", 0, False
Next
MsgBox WScript.ScriptName & " done. " & Now()0.vbs,1.vbs
Option Explicit
Randomize
WScript.Sleep Rnd() * 1000
MsgBox WScript.ScriptName & " done. " & Now()证据:

如您所见,a.vbs首先完成,0.vbs和1.vbs以随机/非调用顺序结束。
发布于 2014-04-22 13:59:02
Set Shell = CreateObject("WScript.Shell")
For i = 1 To 4
strFile = Right("0000" & i, 4) & ".vbs"
If MsgBox("Would you like to run " & strFile & "?", vbYesNo Or vbQuestion) = vbYes Then
Shell.Run "c:\" & strFile, 1, True
MsgBox strFile & " IS END"
End If
Next只需确保将True作为最后一个参数传递给Shell.Run,以便该脚本等到其他脚本完成后才报告它们已经结束。
编辑:回答您关于使用名称的评论,您可以循环遍历动态创建的数组。
For Each strName In Array("Anna", "Diana", "Antony", "Andy")
Next发布于 2021-10-19 13:44:56
我们有0001.vbs,0002.vbs,0003.vbs,0004 have
假设您的脚本文件与前面提到的文件位于同一个目录中。
如果没有,只需修改要运行的vbs文件的完整路径即可。
而不是
WshShell.Run ".\0001.vbs"例如,您可以使用:
WshShell.Run "c:\indel\0001.vbs"这是一个脚本:
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run ".\0001.vbs"
WshShell.Run ".\0002.vbs"
WshShell.Run ".\0003.vbs"
WshShell.Run ".\0004.vbs"https://stackoverflow.com/questions/23221651
复制相似问题