BeforeCloseKey Event
Fires before a registry key is closed.
Syntax
ANSI (Cross Platform) virtual int FireBeforeCloseKey(CBRegistryBeforeCloseKeyEventParams *e);
typedef struct {
void *KeyContext;
int StopFiltering;
int ResultCode; int reserved; } CBRegistryBeforeCloseKeyEventParams; Unicode (Windows) virtual INT FireBeforeCloseKey(CBRegistryBeforeCloseKeyEventParams *e);
typedef struct {
LPVOID KeyContext;
BOOL StopFiltering;
INT ResultCode; INT reserved; } CBRegistryBeforeCloseKeyEventParams;
#define EID_CBREGISTRY_BEFORECLOSEKEY 13 virtual INT CBFSFILTER_CALL FireBeforeCloseKey(LPVOID &lpKeyContext, BOOL &bStopFiltering, INT &iResultCode);
Remarks
This event fires before a registry key is closed.
Applications only need to handle this event if they've added a standard filter rule that includes the REG_CE_BEFORE_CLOSE_KEY flag.
The KeyContext parameter is a placeholder for application-defined data associated with the registry key. Please refer to the Contexts topic for more information. Note that this event does not expose the registry key's name for performance reasons; applications that need it should store it in KeyContext during the BeforeCreateKey/BeforeOpenKey event so that it can be retrieved when this event fires.
The StopFiltering parameter specifies whether the class's system driver should ignore all further operations for the registry key; it is false by default. Applications may set this parameter to true to prevent any further events from firing for the registry key.
The ResultCode parameter will always be 0 when the event is fired. If the event cannot be handled in a "successful" manner for some reason (e.g., a resource isn't available, security checks failed, etc.), set it to a non-zero value to report an appropriate error. Please refer to the Error Reporting and Handling topic for more information.
This event is fired synchronously; please refer to the Event Types topic for more information.