PsSetCreateThreadNotifyRoutine 函数 (ntddk.h)

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)

另请参阅

PsGetCurrentProcessId

PsGetCurrentThreadId

PsIsSystemThread

PsRemoveCreateThreadNotifyRoutine

PsSetCreateProcessNotifyRoutine

PsSetLoadImageNotifyRoutine