[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
  1. Const AppName = "QQ.exe"        ' 程序名称
  2. Const AppPath = "D:\QQ\QQ.exe"  ' 程序路径,不知道路径的话留空
  3. Main
  4. Sub Main()
  5.   ' 循环100次
  6.   For i = 1 To 100
  7.     ' 延时 1 秒
  8.     ' WScript.Sleep 1000
  9.     ' 检查QQ是否运行,运行则退出脚本
  10.     If IsRun(AppName, AppPath) > 0 Then WScript.Quit(0)
  11.   Next
  12.   ' 没有QQ运行,则启动QQ
  13.   CreateObject("Wscript.Shell").Run AppPath
  14. End Sub
  15. ' 检查程序是否运行,返回运行个数
  16. ' Eg: IsRun("mshta.exe", "c:\test.hta") > 1
  17. Function IsRun(byVal AppName, byVal AppPath)
  18.     IsRun = 0 : i = 0
  19.     For Each objItem in GetObject("winmgmts:\\.\root\cimv2:win32_process").instances_
  20.         IF LCase(objItem.name) = LCase(AppName) Then
  21.             If AppPath = "" Then IsRun = 1 : Exit Function
  22.             IF Instr( LCase(objItem.CommandLine) , LCase(AppPath) ) Then i = i + 1
  23.         End IF
  24.     Next
  25.     IsRun = i
  26. End Function
复制代码
『千江有水千江月』千江有水,月映千江;万里无云,万里青天。    http://yu2n.qiniudn.com/

TOP

回复 4# ydm566
你是如何判定没有循环100次的?
如果要延时的效果,把第9行代码前的单引号去掉。
如果要体会100次的效果,在第9行后面加1句:
  1. Msgbox Now()
复制代码
『千江有水千江月』千江有水,月映千江;万里无云,万里青天。    http://yu2n.qiniudn.com/

TOP

代码第2行“ 程序路径,不知道路径的话留空”。
  1. Const AppPath = "D:\QQ\QQ.exe"  ' 程序路径,不知道路径的话留空
复制代码
' 程序路径,不知道路径的话留空
『千江有水千江月』千江有水,月映千江;万里无云,万里青天。    http://yu2n.qiniudn.com/

TOP

返回列表