VBS通过WMI监视注册表变动的代码
VBS通过WMI监视注册表变动的代码
发布时间:2016-12-30 来源:查字典编辑
摘要:Google一下“VBS监视注册表”,TOP5都是一模一样的代码,我查了一下,出处是Hey,ScriptingGuy!Blog上一篇名为《H...

Google一下“VBS监视注册表”,TOP 5都是一模一样的代码,我查了一下,出处是Hey, Scripting Guy! Blog上一篇名为《How Can I Monitor Changes to a Registry Key?》的文章,真是厚颜无耻。

文章我没时间翻译了,贴一下代码:

复制代码 代码如下:

strComputer = "."

Set objWMIService = GetObject("winmgmts:" & strComputer & "rootdefault")

Set colEvents = objWMIService.ExecNotificationQuery _

("SELECT * FROM RegistryKeyChangeEvent WHERE Hive='HKEY_LOCAL_MACHINE' AND " & _

"KeyPath='SOFTWAREMicrosoftWindowsCurrentVersionRun'")

Do

Set objLatestEvent = colEvents.NextEvent

Wscript.Echo Now & ": The registry has been modified."

Loop其实WMI中有4个类可以监视注册表,分别是

RegistryEvent RegistryTreeChangeEvent RegistryKeyChangeEvent RegistryValueChangeEvent

看类名就知道分别是做什么的,上面代码用到的是RegistryKeyChangeEvent,即注册表键改变事件。

在这里我不想谈WMI事件的用法,这是很基础的东西;也不想翻译参考文档,如果连这种简单的英语都看不懂,也没必要用WMI了。我认为WMI最难的地方在于里面的类太多了,很多时候不知道该用哪个类来实现想要的功能。而现在,该用哪个类已经很清楚了,本文也可以结束了。

参考链接:Registering for System Registry Events

原文:http://demon.tw/programming/vbs-wmi-monitor-changes-to-a-registry-key.html

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新Javascript教程学习
热门Javascript教程学习
编程开发子分类