CBFS Filter 2020 C++ Builder Edition

Questions / Feedback?

BeforeOpenKey Event

Fires before a registry key is opened.

Syntax

typedef struct {
  String FullName;
  int DesiredAccess;
  __int64 KeyHandle;
  void* KeyHandleContext;
  int GrantedAccess;
  void* KeyContext;
  bool StopFiltering;
  int ResultCode;
} TcbfCBRegistryBeforeOpenKeyEventParams;

typedef void __fastcall (__closure *TcbfCBRegistryBeforeOpenKeyEvent)(System::TObject* Sender, TcbfCBRegistryBeforeOpenKeyEventParams *e);

__property TcbfCBRegistryBeforeOpenKeyEvent OnBeforeOpenKey = { read=FOnBeforeOpenKey, write=FOnBeforeOpenKey };

Remarks

This event fires before a registry key is opened.

Applications only need to handle this event if they've added a standard filter rule that includes the REG_CE_BEFORE_OPEN_KEY flag.

The FullName parameter reflects the "full" name of the registry key being opened, specified in system format (for example, HKEY_LOCAL_MACHINE\System\... will be \Registry\Machine\System\...). Applications that intend to use the registry key's name during later events should store it in KeyContext during this event; please refer to the Contexts topic for more information.

The DesiredAccess parameter reflects the access rights specified by the requestor. Please refer to Microsoft's Registry Key Security and Access Rights article for more information about possible values.

The KeyHandle parameter specifies a handle to a registry key that should be opened instead of the one this event fired for. Applications can set this parameter to redirect access to the registry key associated with the specified handle.

The KeyHandleContext parameter is a placeholder for application-defined data associated with the application-provided registry key handle. Please refer to the Contexts topic for more information.

The GrantedAccess parameter specifies the granted access rights for an application-provided registry key handle. Applications that set KeyHandle must also set this parameter. Please refer to Microsoft's Registry Key Security and Access Rights article for more information about possible values.

The KeyContext parameter is a placeholder for application-defined data associated with the registry key. Please refer to the Contexts topic for more information.

The StopFiltering parameter specifies whether the component'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.

 
 
Copyright (c) 2020 Callback Technologies, Inc. - All rights reserved.
CBFS Filter 2020 C++ Builder Edition - Version 20.0 [Build 7543]