Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
The REG_NOTIFY_CLASS enumeration type specifies the type of registry operation that the configuration manager is passing to a RegistryCallback routine.
Syntax
typedef enum _REG_NOTIFY_CLASS {
RegNtDeleteKey,
RegNtPreDeleteKey,
RegNtSetValueKey,
RegNtPreSetValueKey,
RegNtDeleteValueKey,
RegNtPreDeleteValueKey,
RegNtSetInformationKey,
RegNtPreSetInformationKey,
RegNtRenameKey,
RegNtPreRenameKey,
RegNtEnumerateKey,
RegNtPreEnumerateKey,
RegNtEnumerateValueKey,
RegNtPreEnumerateValueKey,
RegNtQueryKey,
RegNtPreQueryKey,
RegNtQueryValueKey,
RegNtPreQueryValueKey,
RegNtQueryMultipleValueKey,
RegNtPreQueryMultipleValueKey,
RegNtPreCreateKey,
RegNtPostCreateKey,
RegNtPreOpenKey,
RegNtPostOpenKey,
RegNtKeyHandleClose,
RegNtPreKeyHandleClose,
RegNtPostDeleteKey,
RegNtPostSetValueKey,
RegNtPostDeleteValueKey,
RegNtPostSetInformationKey,
RegNtPostRenameKey,
RegNtPostEnumerateKey,
RegNtPostEnumerateValueKey,
RegNtPostQueryKey,
RegNtPostQueryValueKey,
RegNtPostQueryMultipleValueKey,
RegNtPostKeyHandleClose,
RegNtPreCreateKeyEx,
RegNtPostCreateKeyEx,
RegNtPreOpenKeyEx,
RegNtPostOpenKeyEx,
RegNtPreFlushKey,
RegNtPostFlushKey,
RegNtPreLoadKey,
RegNtPostLoadKey,
RegNtPreUnLoadKey,
RegNtPostUnLoadKey,
RegNtPreQueryKeySecurity,
RegNtPostQueryKeySecurity,
RegNtPreSetKeySecurity,
RegNtPostSetKeySecurity,
RegNtCallbackObjectContextCleanup,
RegNtPreRestoreKey,
RegNtPostRestoreKey,
RegNtPreSaveKey,
RegNtPostSaveKey,
RegNtPreReplaceKey,
RegNtPostReplaceKey,
RegNtPreQueryKeyName,
RegNtPostQueryKeyName,
RegNtPreSaveMergedKey,
RegNtPostSaveMergedKey,
MaxRegNtNotifyClass
} REG_NOTIFY_CLASS;
Constants
RegNtDeleteKeySpecifies that a thread is attempting to delete a key. This value indicates a pre-notification call to RegistryCallback. Use this value only on Windows XP. |
RegNtPreDeleteKeySpecifies that a thread is attempting to delete a key. This value indicates a pre-notification call to RegistryCallback. Use this value on Windows Server 2003 and later versions of the Windows operating system. |
RegNtSetValueKeySpecifies that a thread is attempting to set a value entry for a key. This value indicates a pre-notification call to RegistryCallback. Use this value only on Windows XP. |
RegNtPreSetValueKeySpecifies that a thread is attempting to set a value entry for a key. This value indicates a pre-notification call to RegistryCallback. Use this value on Windows Server 2003 and later versions of the Windows operating system. |
RegNtDeleteValueKeySpecifies that a thread is attempting to delete a value entry for a key. This value indicates a pre-notification call to RegistryCallback. Use this value only on Windows XP. |
RegNtPreDeleteValueKeySpecifies that a thread is attempting to delete a value entry for a key. This value indicates a pre-notification call to RegistryCallback. Use this value on Windows Server 2003 and later versions of the Windows operating system. |
RegNtSetInformationKeySpecifies that a thread is attempting to set the metadata for a key. This value indicates a pre-notification call to RegistryCallback. Use this value only on Windows XP. |
RegNtPreSetInformationKeySpecifies that a thread is attempting to set the metadata for a key. This value indicates a pre-notification call to RegistryCallback. Use this value on Windows Server 2003 and later versions of the Windows operating system. |
RegNtRenameKeySpecifies that a thread is attempting to rename a key. This value indicates a pre-notification call to RegistryCallback. Use this value only on Windows XP. |
RegNtPreRenameKeySpecifies that a thread is attempting to rename a key. This value indicates a pre-notification call to RegistryCallback. Use this value on Windows Server 2003 and later versions of the Windows operating system. |
RegNtEnumerateKeySpecifies that a thread is attempting to enumerate a subkey of a key. This value indicates a pre-notification call to RegistryCallback. Use this value only on Windows XP. |
RegNtPreEnumerateKeySpecifies that a thread is attempting to enumerate a subkey of a key. This value indicates a pre-notification call to RegistryCallback. Use this value on Windows Server 2003 and later versions of the Windows operating system. |
RegNtEnumerateValueKeySpecifies that a thread is attempting to enumerate a value entry for a key. This value indicates a pre-notification call to RegistryCallback. Use this value only on Windows XP. |
RegNtPreEnumerateValueKeySpecifies that a thread is attempting to enumerate a value entry for a key. This value indicates a pre-notification call to RegistryCallback. Use this value on Windows Server 2003 and later versions of the Windows operating system. |
RegNtQueryKeySpecifies that a thread is attempting to read the metadata for a key. This value indicates a pre-notification call to RegistryCallback. Use this value only on Windows XP. |
RegNtPreQueryKeySpecifies that a thread is attempting to read the metadata for a key. This value indicates a pre-notification call to RegistryCallback. Use this value on Windows Server 2003 and later versions of the Windows operating system. |
RegNtQueryValueKeySpecifies that a thread is attempting to read a value entry for a key. This value indicates a pre-notification call to RegistryCallback. Use this value only on Windows XP. |
RegNtPreQueryValueKeySpecifies that a thread is attempting to read a value entry for a key. This value indicates a pre-notification call to RegistryCallback. Use this value on Windows Server 2003 and later versions of the Windows operating system. |
RegNtQueryMultipleValueKeySpecifies that a thread is attempting to query multiple value entries for a key. This value indicates a pre-notification call to RegistryCallback. Use this value on only Windows XP. |
RegNtPreQueryMultipleValueKeySpecifies that a thread is attempting to query multiple value entries for a key. This value indicates a pre-notification call to RegistryCallback. Use this value on Windows Server 2003 and later versions of the Windows operating system. |
RegNtPreCreateKeySpecifies that a thread is attempting to create a key. This value indicates a pre-notification call to RegistryCallback. Use this value only on Windows XP. |
RegNtPostCreateKeySpecifies that a thread has successfully created a key. This value indicates a post-notification call to RegistryCallback. Use this value only on Windows XP. |
RegNtPreOpenKeySpecifies that a thread is attempting to open an existing key. This value indicates a pre-notification call to RegistryCallback. Use this value only on Windows XP. |
RegNtPostOpenKeySpecifies that a thread has successfully opened an existing key. This value indicates a post-notification call to RegistryCallback. Use this value only on Windows XP. |
RegNtKeyHandleCloseSpecifies that a thread is attempting to close a key handle. This value indicates a pre-notification call to RegistryCallback. Use this value only on Windows XP. |
RegNtPreKeyHandleCloseSpecifies that a thread is attempting to close a key handle. This value indicates a pre-notification call to RegistryCallback. Use this value on Windows Server 2003 and later versions of the Windows operating system. Drivers can monitor this registry operation but they cannot block or modify it. |
RegNtPostDeleteKeySpecifies that the system has attempted to delete the key. This value indicates a post-notification call to RegistryCallback. Use this value on Windows Server 2003 and later versions of the Windows operating system. |
RegNtPostSetValueKeySpecifies that the system has attempted to set a value entry for a key. This value indicates a post-notification call to RegistryCallback. Use this value on Windows Server 2003 and later versions of the Windows operating system. |
RegNtPostDeleteValueKeySpecifies that the system has attempted to delete a value entry for a key. This value indicates a post-notification call to RegistryCallback. Use this value on Windows Server 2003 and later versions of the Windows operating system. |
RegNtPostSetInformationKeySpecifies that the system has attempted to set the key's metadata. This value indicates a post-notification call to RegistryCallback. Use this value on Windows Server 2003 and later versions of the Windows operating system. |
RegNtPostRenameKeySpecifies that the system has attempted to rename the key. This value indicates a post-notification call to RegistryCallback. Use this value on Windows Server 2003 and later versions of the Windows operating system. |
RegNtPostEnumerateKeySpecifies that the system has attempted to enumerate the subkey of a key. This value indicates a post-notification call to RegistryCallback. Use this value on Windows Server 2003 and later versions of the Windows operating system. |
RegNtPostEnumerateValueKeySpecifies that the system has attempted to enumerate the value entry of a key. This value indicates a post-notification call to RegistryCallback. Use this value on Windows Server 2003 and later versions of the Windows operating system. |
RegNtPostQueryKeySpecifies that the system has attempted to query the metadata for a key. This value indicates a post-notification call to RegistryCallback. Use this value on Windows Server 2003 and later versions of the Windows operating system. |
RegNtPostQueryValueKeySpecifies that the system has attempted to query a value entry for the key. This value indicates a post-notification call to RegistryCallback. Use this value on Windows Server 2003 and later versions of the Windows operating system. |
RegNtPostQueryMultipleValueKeySpecifies that the system has attempted to query multiple value entries for the key. This value indicates a post-notification call to RegistryCallback. Use this value on Windows Server 2003 and later versions of the Windows operating system. |
RegNtPostKeyHandleCloseSpecifies that the system has attempted to close a key handle. This value indicates a post-notification call to RegistryCallback. Use this value on Windows Server 2003 and later versions of the Windows operating system. |
RegNtPreCreateKeyExSpecifies that a thread is attempting to create a key. This value indicates a pre-notification call to RegistryCallback. Use this value on Windows Server 2003 and later versions of the Windows operating system. |
RegNtPostCreateKeyExSpecifies that the system has attempted to create a key. This value indicates a post-notification call to RegistryCallback. Use this value on Windows Server 2003 and later versions of the Windows operating system. |
RegNtPreOpenKeyExSpecifies that a thread is attempting to open an existing key. This value indicates a pre-notification call to RegistryCallback. Use this value on Windows Server 2003 and later versions of the Windows operating system. |
RegNtPostOpenKeyExSpecifies that the system has attempted to open an existing key. This value indicates a post-notification call to RegistryCallback. Use this value on Windows Server 2003 and later versions of the Windows operating system. |
RegNtPreFlushKeySpecifies that a thread is attempting to write a key to disk. This value indicates a pre-notification call to RegistryCallback. Use this value on Windows Vista and later versions of the Windows operating system. |
RegNtPostFlushKeySpecifies that the system has attempted to write a key to disk. This value indicates a post-notification call to RegistryCallback. Use this value on Windows Vista and later versions of the Windows operating system. |
RegNtPreLoadKeySpecifies that a thread is attempting to load a registry hive from a file. This value indicates a pre-notification call to RegistryCallback. Use this value on Windows Vista and later versions of the Windows operating system. |
RegNtPostLoadKeySpecifies that the system has attempted to load a registry hive from a file. This value indicates a post-notification call to RegistryCallback. Use this value on Windows Vista and later versions of the Windows operating system. |
RegNtPreUnLoadKeySpecifies that a thread is attempting to unload a registry hive. This value indicates a pre-notification call to RegistryCallback. Use this value on Windows Vista and later versions of the Windows operating system. |
RegNtPostUnLoadKeySpecifies that the system has attempted to unload a registry hive. This value indicates a post-notification call to RegistryCallback. Use this value on Windows Vista and later versions of the Windows operating system. |
RegNtPreQueryKeySecuritySpecifies that a thread is attempting to obtain a registry key's security information. This value indicates a pre-notification call to RegistryCallback. Use this value on Windows Vista and later versions of the Windows operating system. |
RegNtPostQueryKeySecuritySpecifies that a thread has attempted to obtain a registry key's security information. This value indicates a post-notification call to RegistryCallback. Use this value on Windows Vista and later versions of the Windows operating system. |
RegNtPreSetKeySecuritySpecifies that a thread is attempting to set a registry key's security information. This value indicates a pre-notification call to RegistryCallback. Use this value on Windows Vista and later versions of the Windows operating system. |
RegNtPostSetKeySecuritySpecifies that a thread has attempted to set a registry key's security information. This value indicates a post-notification call to RegistryCallback. Use this value on Windows Vista and later versions of the Windows operating system. |
RegNtCallbackObjectContextCleanupSpecifies that the driver has called CmUnRegisterCallback or the driver's RegistryCallback routine has just finished processing a RegNtPreKeyHandleClose class value. Use this value on Windows Vista and later versions of the Windows operating system. |
RegNtPreRestoreKeySpecifies that a thread is attempting to restore a registry key's information. This value indicates a pre-notification call to RegistryCallback. Use this value on Windows Vista SP2 and later versions of the Windows operating system. |
RegNtPostRestoreKeySpecifies that a thread has attempted to restore a registry key's information. This value indicates a post-notification call to RegistryCallback. Use this value on Windows Vista SP2 and later versions of the Windows operating system. |
RegNtPreSaveKeySpecifies that a thread is attempting to save a registry key's information. This value indicates a pre-notification call to RegistryCallback. Use this value on Windows Vista SP2 and later versions of the Windows operating system. |
RegNtPostSaveKeySpecifies that a thread has attempted to save a registry key's information. This value indicates a post-notification call to RegistryCallback. Use this value on Windows Vista SP2 and later versions of the Windows operating system. |
RegNtPreReplaceKeySpecifies that a thread is attempting to replace a registry key's information. This value indicates a pre-notification call to RegistryCallback. Use this value on Windows Vista SP2 and later versions of the Windows operating system. |
RegNtPostReplaceKeySpecifies that a thread has attempted to replace a registry key's information. This value indicates a post-notification call to RegistryCallback. Use this value on Windows Vista SP2 and later versions of the Windows operating system. |
RegNtPreQueryKeyNameSpecifies that a thread is attempting to obtain the full path of a registry key. Use this value on Windows 10 and later versions of the Windows operating system. |
RegNtPostQueryKeyNameSpecifies that a thread has attempted to obtain the full path of a registry key. Use this value on Windows 10 and later versions of the Windows operating system. |
RegNtPreSaveMergedKeySpecifies that a thread is attempting to save a merged view of two registry subtrees to a file. Use this value on Windows 10 and later versions of the Windows operating system. |
RegNtPostSaveMergedKeySpecifies that a thread has attempted to save a merged view of two registry subtrees to a file. Use this value on Windows 10 and later versions of the Windows operating system. |
MaxRegNtNotifyClassSpecifies the maximum value in this enumeration type. |
Remarks
When the configuration manager calls a driver's RegistryCallback routine, it passes a REG_NOTIFY_CLASS enumeration value to the routine. The configuration manager also passes a notification-specific structure that contains information about the notification. For a list of these structures, see RegistryCallback.
Requirements
| Requirement | Value |
|---|---|
| Minimum supported client | Available for Windows XP and later versions of the Windows operating system, but some enumeration values are available only for specified later versions of the Windows operating system. |
| Header | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |