PsSetCreateThreadNotifyRoutine 例程注册驱动程序提供的回调,该回调随后会在创建新线程和删除此类线程时收到通知。
语法
NTSTATUS PsSetCreateThreadNotifyRoutine(
[in] PCREATE_THREAD_NOTIFY_ROUTINE NotifyRoutine
);
参数
[in] NotifyRoutine
指向驱动程序实现 PCREATE_THREAD_NOTIFY_ROUTINE 例程的指针。
返回值
PsSetCreateThreadNotifyRoutine 返回STATUS_SUCCESS,或者在回调注册失败时返回STATUS_INSUFFICIENT_RESOURCES。
言论
高级驱动程序可以调用 PsSetCreateThreadNotifyRoutine 来设置其线程创建通知例程,声明如下:
VOID
(*PCREATE_THREAD_NOTIFY_ROUTINE) (
IN HANDLE ProcessId,
IN HANDLE ThreadId,
IN BOOLEAN Create
);
例如,IFS 或最高级别的系统分析驱动程序可能会注册此类线程创建回调,以跟踪针对驱动程序的内部状态创建和删除线程的系统范围。
驱动程序必须在卸载之前删除它注册的任何回调。 可以通过调用 PsRemoveCreateThreadNotifyRoutine 例程来删除回调。
要求
要求 | 价值 |
---|---|
目标平台 | 普遍 |
标头 | ntddk.h (包括 Ntddk.h) |
库 | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
DDI 符合性规则 | HwStorPortProhibitedDIS(storport)、IrqlPsPassive(wdm)、PowerIrpDDis(wdm) |
另请参阅
PsRemoveCreateThreadNotifyRoutine