标题: VBS调用WMI监视注册表变动
作者: Demon
链接: https://demon.tw/programming/vbs-wmi-monitor-changes-to-a-registry-key.html
版权: 本博客的所有文章,都遵守“署名-非商业性使用-相同方式共享 2.5 中国大陆”协议条款。
似乎有人觉得用VBS监视注册表很高级?使用了WMI事件而已,跟《用VBS监视进程创建和删除》一样。Google一下“VBS监视注册表”,TOP 5都是一模一样的代码,我查了一下,出处是Hey, Scripting Guy! Blog上一篇名为《How Can I Monitor Changes to a Registry Key?》的文章,真是厚颜无耻。
文章我没时间翻译了,贴一下代码:
strComputer = "." Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\default") Set colEvents = objWMIService.ExecNotificationQuery _ ("SELECT * FROM RegistryKeyChangeEvent WHERE Hive='HKEY_LOCAL_MACHINE' AND " & _ "KeyPath='SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run'") Do Set objLatestEvent = colEvents.NextEvent Wscript.Echo Now & ": The registry has been modified." Loop
其实WMI中有4个类可以监视注册表,分别是
看类名就知道分别是做什么的,上面代码用到的是RegistryKeyChangeEvent,即注册表键改变事件。
在这里我不想谈WMI事件的用法,这是很基础的东西;也不想翻译参考文档,如果连这种简单的英语都看不懂,也没必要用WMI了。我认为WMI最难的地方在于里面的类太多了,很多时候不知道该用哪个类来实现想要的功能。而现在,该用哪个类已经很清楚了,本文也可以结束了。
参考链接:Registering for System Registry Events
赞赏微信赞赏支付宝赞赏
随机文章:
呵呵,周末回来,你的bbs就关闭了…….
我有个问题请教。您的网页是自己制作的吗?
我现在有了一个域名:www.jevin。tw
但是我不知道怎么用,教教我好么?我的qq也给你留下了。
我的邮箱rongshuxiashe@163.com
没有关闭啊。
网站是用WordPress搭建的。
只有域名还不行,还需要虚拟主机或VPS或服务器。
虚拟主机或者vps或者服务器要不要花钱啊?你是怎么弄的?
域名要不要花钱啊?
你的意思?我的域名是在一个网站上免费申请的,免费1年。但是我都不知道有了域名怎么把网页搞上去
.tw域名还有免费的?!我的可是$39.9/year。