如何让VBS判断多个进程是否存在? 若全不在,则依次运行多个可执行文件 100
如何让VBS判断多个进程是否存在?若全部不在,则依次运行多个可执行文件我有5个程序先用vbs让5个程序依次运行(001.exe,002.exe,003.exe,004.e...
如何让VBS判断多个进程是否存在? 若全部不在,则依次运行多个可执行文件
我有5个程序
先用vbs让5个程序依次运行(001.exe, 002.exe, 003.exe, 004.exe, 005.exe)
vbs在一旁检测
当vbs判断5个进程全都不存在,则再一次 依顺序运行5个程序
如何编写vbs?
在此求问热心高人了
谢谢各位
可能我说明不清楚,在此抱歉
其实之後的操作没循环不打紧
我的需求流程是:1.exe,2.exe,....5.exe -> 1.exe,2.exe,....5.exe -> A.exe,B.exe,C.exe.....
意思是:
5个程序先依次运行,
当5个程序全部关闭後,才开始第二轮相同5个程序依次运行
第二轮相同5个程序全部关闭後,则开始其他程序A.exe,B.exe,C.exe.....依次运行
严谨地说:刚开始5个程序只要循环一轮,之後其他程序A.B.C...依次运行,不用再循环 展开
我有5个程序
先用vbs让5个程序依次运行(001.exe, 002.exe, 003.exe, 004.exe, 005.exe)
vbs在一旁检测
当vbs判断5个进程全都不存在,则再一次 依顺序运行5个程序
如何编写vbs?
在此求问热心高人了
谢谢各位
可能我说明不清楚,在此抱歉
其实之後的操作没循环不打紧
我的需求流程是:1.exe,2.exe,....5.exe -> 1.exe,2.exe,....5.exe -> A.exe,B.exe,C.exe.....
意思是:
5个程序先依次运行,
当5个程序全部关闭後,才开始第二轮相同5个程序依次运行
第二轮相同5个程序全部关闭後,则开始其他程序A.exe,B.exe,C.exe.....依次运行
严谨地说:刚开始5个程序只要循环一轮,之後其他程序A.B.C...依次运行,不用再循环 展开
1个回答
2015-04-23 · 知道合伙人软件行家
关注
展开全部
试编写代码如下:
Set rd=getobject("winmgmts:\\.")
Set dl=rd.instancesof("win32_process")
a1 = appIsExits("001.exe")
a2 = appIsExits("002.exe")
a3 = appIsExits("003.exe")
a4 = appIsExits("004.exe")
a5 = appIsExits("005.exe")
If a1 And a2 And a3 And a4 And a5 Then
'代码
End If
Function appIsExits(sAppName)
Result = False
For each r in dl
If r.name= sAppName Then
Result = True
Exit For
End if
Next
appIsExits = Result
End Function
更多追问追答
追问
测试後 结果毫无反应
vbs没先依次运行5个程序
连vbs本身 wscript.exe都未出现在进程中
是否为系统不同造成?
我的系统是xp sp3 pro
追答
1、上面的代码里并没有加入运行程序的代码。
2、vbs 里编写循环运行的程序不好,因为没有提供额外的控制程序中止的机制。
以下是加入运行程序的代码,仅供参考:
Set obj=createobject("wscript.shell")
Set rd=getobject("winmgmts:\\.")
Set dl=rd.instancesof("win32_process")
a1 = appIsNotExits("001.exe")
a2 = appIsNotExits("002.exe")
a3 = appIsNotExits("003.exe")
a4 = appIsNotExits("004.exe")
a5 = appIsNotExits("005.exe")
If a1 And a2 And a3 And a4 And a5 Then
runExes()
Next
Function runExes()
obj.run "001.exe"
obj.run "002.exe"
obj.run "003.exe"
obj.run "004.exe"
obj.run "005.exe"
runExes = True
End Function
Function appIsNotExits(sAppName)
Result = True
For each r in dl
If r.name= sAppName Then
Result = False
Exit For
End if
Next
appIsExits = Result
End Function
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询