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)
Library NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
DDI 符合性规则 HwStorPortProhibitedDDI (storport) IrqlPsPassive (wdm) PowerIrpDDis (wdm)

另请参阅

PsGetCurrentProcessId

PsGetCurrentThreadId

PsIsSystemThread

PsRemoveCreateThreadNotifyRoutine

PsSetCreateProcessNotifyRoutine

PsSetLoadImageNotifyRoutine