如何创建一个Windows注册表监视器?

11

如何使用.Net创建Windows注册表监视器应用程序,

我希望这个应用程序可以监视所有的注册表钩子,并在值发生更改时触发一个事件,该事件将告诉我该值的旧值和新值

这是否可行?怎么做?只需要想法或开始的地方。

4个回答

15

不太喜欢那种方法,因为它只是同步地坐在一个线程上,等待变化。 - RandomEngy

2
订阅可以通过WMI或直接通过在单独的线程中阻止RegNotifyChangeKeyValue调用来完成,并且您需要自己监视旧值和新值。这里是代码。

2

.Net框架中没有内置的类来监视注册表。 但是你仍然可以使用包装好的WinAPI调用或WMI接口(请参见示例)。


1

使用 WMI 类来访问注册表,我可以在键值更改后获取旧值和新值吗? - Amr Elgarhy
还在寻找,但情况不太乐观……你可能需要采用Cletus建议的win32包装器方法。 - JP Alioto

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接