ObRegisterCallbacks 函数 (wdm.h)

ObRegisterCallbacks 例程注册线程、进程和桌面句柄操作的回调例程列表。

语法

NTSTATUS ObRegisterCallbacks(
  [in]  POB_CALLBACK_REGISTRATION CallbackRegistration,
  [out] PVOID                     *RegistrationHandle
);

参数

[in] CallbackRegistration

指向 OB_CALLBACK_REGISTRATION 结构的指针,该结构指定回调例程和其他注册信息的列表。

[out] RegistrationHandle

指向变量的指针,该变量接收标识注册的回调例程集的值。 调用方将此值传递给 ObUnRegisterCallbacks 例程,以取消注册回调集。

返回值

ObRegisterCallbacks 返回 NTSTATUS 值。 此例程可能会返回以下值之一:

返回代码 说明
STATUS_SUCCESS
向系统注册指定的回调例程。
STATUS_FLT_INSTANCE_ALTITUDE_COLLISION
调用驱动程序或其他驱动程序已经为 CallBackRegistration海拔指定的海拔高度注册了回调例->。 有关此高度的详细信息,请参阅 OB_CALLBACK_REGISTRATION海拔成员的说明。
STATUS_INVALID_PARAMETER
注册中指定的一个或多个参数无效。 ObRegisterCallbacks 可能会返回此错误,例如,如果为 CallBackRegistration->版本 指定了无效值,或者为不支持回调例程的对象类型尝试注册。
STATUS_ACCESS_DENIED
回调例程不驻留在已签名的内核二进制映像中。
STATUS_INSUFFICIENT_RESOURCES
尝试分配内存失败。

注解

驱动程序必须在卸载之前注销所有回调例程。 可以通过调用 ObUnRegisterCallbacks 例程来取消注册回调例程。

要求

要求
最低受支持的客户端 从具有 Service Pack 1 (SP1) 和 Windows Server 2008 的 Windows Vista 开始可用。
目标平台 通用
标头 wdm.h(包括 Wdm.h、Ntddk.h、Ntifs.h)
Library NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

另请参阅

OB_CALLBACK_REGISTRATION

ObUnRegisterCallbacks