次の方法で共有


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 ルーチンを呼び出します。

要件

要件
対象プラットフォーム ユニバーサル
Header ntddk.h (Ntddk.h を含む)
Library NtosKrnl.lib
[DLL] NtosKrnl.exe
IRQL PASSIVE_LEVEL
DDI コンプライアンス規則 HwStorPortProhibitedDDIs(storport), IrqlPsPassive(wdm), PowerIrpDDis(wdm)

こちらもご覧ください

PsGetCurrentProcessId

PsGetCurrentThreadId

PsIsSystemThread

PsRemoveCreateThreadNotifyRoutine

PsSetCreateProcessNotifyRoutine

PsSetLoadImageNotifyRoutine