winapi - 有没有办法监控注册表的变化?

标签 winapi registry

您能告诉我如何使用 WinAPI 等监视注册表更改(指定值)吗?

我知道有这个函数RegNotifyChangeKeyValue允许通知调用者有关指定注册表的属性或内容的更改,例如: HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run

但我需要查看 key 中指定参数的值是否已更改: HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run\Skype

因此 RegNotifyChangeKeyValue 仅适用于键并监视指定键的所有参数...

谢谢!

最佳答案

RegNotifyChangeKeyValue 就是您所需要的。传入 REG_NOTIFY_CHANGE_LAST_SET 作为通知过滤器参数,每当您收到通知时,您就知道键的某些值已被添加、删除或修改。然后,您必须检查利息的特定值是否已更改。没有更细粒度的监控功能可供您使用。

关于winapi - 有没有办法监控注册表的变化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34199566/

相关文章:

windows - Windows 上的 GNU 汇编器 : WriteFile returns ERROR_INVALID_HANDLE

c++ - 使用 __except 分析故障转储

c++ - C++中的按键事件

registry - NSIS:无法从 Windows 7 64 位注册表中获取 JRE 版本

c# - 从注册表中检索文件安装路径

java - 如何迭代所有的注册表项?

c# - Visual Studio 安装项目是否在卸载时保留了注册表项?

c++ - 如何正确使用 WriteConsoleOutputAttribute 函数

c - 如何在同一进程内共享共享对文件的读/写访问权限,但在外部禁止它?

iis - 访问注册表项 'Global' 被拒绝