使用vbs脚本来监控windows服务器上的应用程?不存在就启动) |
|
ıǩvbs守卫进程,监控进程 这个vbs代码主要实现的功能就是运行该程序,就会在进程中出现一个wscript.exe 它会每隔10s扫面一次进程中是否存在notepad.exe这个程序,不存在就启动。这个启动程序可能跟进程名不一样,好比tomcat应用,启动的是startup.bat,后台进程名为java.exe,这样就需要调整代码proname="java.exe" 关于如果关掉监控 可以在运行下执行 调整WshShell.Run("startup.bat") 核心代码 dim wmi,proc,procs,proname,flag,WshShell
Do
proname="notepadjb51.exe" '需要监测的服务进程的名称,自行替换这里的记事本进程?
set wmi=getobject("winmgmts:{impersonationlevel=impersonate}!.rootcimv2")
set procs=wmi.execquery("select * from win32_process")
flag=true
for each proc in procs
if strcomp(proc.name,proname)=0 then
flag=false
exit for
end if
next
set wmi=nothing
if flag then
Set WshShell = Wscript.CreateObject("Wscript.Shell")
WshShell.Run ("notepadjb51.exe")
end if
wscript.sleep 10000 '检测间隔时VBS写个小脚?实时监测指定程序是否运行 对运行的软件进行操作 最后关闭运行软?/h3>
strComputer = "."
Set objShell = CreateObject("Wscript.Shell")
do
Set wbemServices = Getobject("winmgmts:\" & strComputer)
Set wbemObjectSet = wbemServices.InstancesOf("Win32_process")
For Each wbemObject In wbemObjectSet
if wbemObject.name="QQ.exe" then
WScript.Sleep 1000
objShell.SendKeys "{F12}"
WScript.Sleep 1000
objShell.SendKeys "{ENTER}"
dim WSHshell
set WSHshell = wscript.createobject("wscript.shell")
WSHshell.run "taskkill /im wscript.exe /f ",0 ,true
end if
Next
loop关于vbs系统运行后,系统进程中产生大量wscript.exe taskkill /IM wscript.exe /F taskkill /IM cscript.exe /F taskkill /IM consent.exe /F taskkill /IM ChsIME.exe /F 所有建议服务器上运行vbs后,如果出现大量wscript.exe进程,可以加上下面的命令 dim WSHshell
set WSHshell = wscript.createobject("wscript.shell")
WSHshell.run "taskkill /im wscript.exe /f ",0 ,true到此这篇关于使用vbs脚本来监控windows服务器上的应用程?不存在就启动)的文章就介绍到这?更多相关vbs守卫进程内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家?/p> |
tasklist /nh|find /i "ClientOfWatcher.exe" if ERRORLEVEL 1 (start C:watcherClientOfWatcher.exe) else (exit)
option Explicit
dim wmi,proc,procs,proname,flag,WshShell
Do
proname="ClientOfWatcher.exe" '需要监测的服务进程的名称,自行替换这里的记事本进程?
set wmi=getobject("winmgmts:{impersonationlevel=impersonate}!\.
ootcimv2")
set procs=wmi.execquery("select * from win32_process")
flag=true
for each proc in procs
if strcomp(proc.name,proname)=0 then
flag=false
exit for
end if
next
set wmi=nothing
if flag then
Set WshShell = Wscript.CreateObject("Wscript.Shell")
WshShell.Run ("C:WatcherClientOfWatcher.exe")
end if
wscript.sleep 50000 '检测间隔时间,这里?0?
loop