tmEnableCallbacks 函数 (wdm.h)
TmEnableCallbacks 例程支持接收事务通知的回调例程。
语法
NTSTATUS TmEnableCallbacks(
[in] PKRESOURCEMANAGER ResourceManager,
[in] PTM_RM_NOTIFICATION CallbackRoutine,
[in, optional] PVOID RMKey
);
参数
[in] ResourceManager
指向 资源管理器对象的指针。 若要获取此指针,组件必须调用 ObReferenceObjectByHandle ,并提供以前对 ZwCreateResourceManager 或 ZwOpenResourceManager 的调用所提供的对象句 柄 。
[in] CallbackRoutine
指向 ResourceManagerNotification 例程的指针。
[in, optional] RMKey
调用方定义的上下文值,用于唯一标识资源管理器。 调用方 ResourceManagerNotification 例程接收此值作为输入。
返回值
如果操作成功,TmEnableCallbacks 将返回STATUS_SUCCESS。 否则,此例程可能会返回以下值:
返回代码 | 说明 |
---|---|
|
CallbackRoutine 指针为 NULL。 |
例程可能会返回其他 NTSTATUS 值。
注解
资源管理器可以调用 TmEnableCallbacks 来启用 ResourceManagerNotification 回调例程。 使用 TmEnableCallbacks 启用异步通知。 使用 ZwGetNotificationResourceManager 同步获取通知。
资源管理器可以为每个资源管理器对象注册一个回调例程。
有关 TmEnableCallbacks 例程的详细信息,请参阅创建资源管理器。
有关何时使用 KTM 的 TmXxx 例程而不是 ZwXxx 例程的信息,请参阅 使用 TmXxx 例程。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 在 Windows Vista 和更高版本的操作系统中可用。 |
目标平台 | 通用 |
标头 | wdm.h(包括 Wdm.h、Ntddk.h、Ntifs.h) |
Library | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |