怎样用VBS代码检测某程序是否在运行,在运行就等待几秒再检测,不在就关机

怎样用VBS代码检测某程序是否在运行,在运行就等待几秒再检测,如此循环,不在就关机。大神们帮帮忙。... 怎样用VBS代码检测某程序是否在运行,在运行就等待几秒再检测,如此循环,不在就关机。大神们帮帮忙。 展开
 我来答
sordking
2015-04-29 · TA获得超过551个赞
知道小有建树答主
回答量:161
采纳率:100%
帮助的人:191万
展开全部
你的程序不在运行时,运行此脚本会关机! 注意保存你的当前工作:

Dim WMI, proc, procs,wshell
Set WMI = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")
Set wshell= WScript.CreateObject("WScript.shell")

public function pid(byval val)
pid=0
Set procs = WMI.execquery("select * from win32_process")
For Each proc in procs
If proc.name =val Then
pid=pid+1
exit for
End If
Next
Set procs = nothing
end function

Do
WScript.sleep 2000 '单位是毫秒
if pid("cmd.exe")=0 then 'cmd.exe 是要检测的程序名
wshell.run "shutdown -s -t 10 " '10秒后关机,这命令自己设
wscript.quit
end if
Loop
追问
我想在代码的最前面加个定时呢,比如1小时后运行这段循环检查的代买(就是运行你刚给的全部代码,只是时候拖后了)
追答
那就相当于1小时后再启动脚本了,有必要先启动脚本再等1小时吗?实在有这必要你就在循环前让脚本sleep个1小时
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式