我原来的想法是利用其他的软件对杀毒软件的进程进行监视,不过试了很多,都不太理想。今天偶然在网上看到一个可以监视进程终止的Windows脚本,一下子就想到了这个题目,感觉用这个似乎可以做到。不过本人对Windows脚本可以说一窍不通,只好把脚本里的单词一个一个地Google,然后用其他的脚本东拼西凑出来可以解决这个问题的脚本。
打开记事本,输入下面文字:
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colMonitoredProcesses = objWMIService. _
ExecNotificationQuery("select * from __instancedeletionevent " _
& "within 1 where TargetInstance isa 'Win32_Process'")
i = 0
Do While i = 0
Set objLatestProcess = colMonitoredProcesses.NextEvent
If objLatestProcess.TargetInstance.Name = "RavMon.exe" Then
Wscript.Echo "注意:瑞星杀毒软件已经被关闭!!! " & objLatestProcess.TargetInstance.name
end if
Loop
将第十行中的RavMon.exe替换成自己所使用的杀毒软件进程名,一定要注意大小写,第十一行中的中文字也可以自己写。然后依次单击“文件→另存为”,将其保存为*.vbs文件,双击运行即可开始对杀毒软件的监视,最好放到Windows启动文件夹中(C:\Documents and Settings\All Users\「开始」菜单\程序\启动),这样每次开机都会自动对杀毒软件进行监视。另外,大多数杀毒软件有多个进程,如果觉得只监视一个不够,可以将第十行改为:If objLatestProcess.TargetInstance.Name = "进程名1" or objLatestProcess.TargetInstance.Name = "进程名2" or objLatestProcess.TargetInstance.Name = "进程名3" (……) Then(见图1)。
番茄点评:别看用到了脚本,但还算是蛮原始的监控手段,只能在系统启动或者双击运行的那一刻检测并提醒。不过,通过这个题目充分地说明了,挑战让朋友们主动去学习,了解自己以前不熟悉的知识,快速地成长。所以,欢迎大家常来挑战!