RegNotifyChangeKeyValue函数通知调用者对指定注册表项的属性或内容的更改。请注意,如果指定的键被删除,该函数不通知调用者。
LONG RegNotifyChangeKeyValue(
HKEY 【的hKeyru-Latn】, | //看钥匙的句柄 |
BOOL 【bWatchSubtree】, | //子标签通知 |
DWORD 【dwNotifyFilter】, | //更改要报告 |
HANDLE 【活动】, | //处理信号事件 |
BOOL 【// flag for asynchronous reporting】 | //异步报告的标志 |
); |
参数
【的hKeyru-Latn】
标识当前打开的键或任何以下预定义保留句柄值:
HKEY_CLASSES_ROOT
HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE
HKEY_USERS
【bWatchSubtree】
指定一个标志,指示是否报告指定键及其所有子项的更改或仅在指定的键中进行更改。如果此参数为TRUE,则该函数将报告键及其子项中的更改。如果参数为FALSE,则功能报??告仅在键中更改。
【dwNotifyFilter】
指定一组标志来控制哪些更改应该被报告。此参数可以是以下值的组合:
值 | 含义 |
REG_NOTIFY_CHANGE_NAME | 如果添加或删除子项,通知主叫方。 |
REG_NOTIFY_CHANGE_ATTRIBUTES | 通知呼叫者更改密钥的属性,如安全描述符信息。 |
REG_NOTIFY_CHANGE_LAST_SET | 通知呼叫者对键值的更改。这可以包括添加或删除值或更改现有值。 |
REG_NOTIFY_CHANGE_SECURITY | 通知呼叫者更改密钥的安全描述符。 |
【活动】
标识事件。如果【// flag for asynchronous reporting】参数为TRUE,则该函数立即返回,并通过发送此事件来报告更改。如果【// flag for asynchronous reporting】为FALSE,【活动】将被忽略。
【// flag for asynchronous reporting】
指定一个标志,指示功能报告如何更改。如果此参数为TRUE,该函数将立即返回,并通过发送指定的事件来报告更改。当此参数为FALSE时,该函数在发生更改之前不会返回。
如果【活动】未指定有效的事件,则【// flag for asynchronous reporting】参数不能为TRUE。
返回值
如果函数成功,则返回值为ERROR_SUCCESS。
如果函数失败,返回值是在WINERROR.H中定义的非零错误代码。您可以使用带有FORMAT_MESSAGE_FROM_SYSTEM标志的FormatMessage函数来获取错误的一般描述。
备注
如果由【的hKeyru-Latn】参数识别的密钥关闭,则表示该事件。这意味着应用程序在从事件的等待操作返回后,不应该依赖于打开的密钥。
RegNotifyChangeKeyValue不适用于远程句柄。如果使用【的hKeyru-Latn】值作为远程句柄调用RegNotifyChangeKeyValue,则返回ERROR_INVALID_HANDLE。
也可以看看
RegDeleteKey, RegEnumKey, RegEnumKeyEx, RegEnumValue, RegQueryInfoKey, RegQueryValue, RegQueryValueEx