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 コンプライアンス規則 を する | HwStorPortProhibitedDDDIs(storport), IrqlPsPassive(wdm), PowerIrpDDis(wdm) |
関連項目
PsGetCurrentProcessId の
PsGetCurrentThreadId の
PsIsSystemThread の
PsRemoveCreateThreadNotifyRoutine
PsSetCreateProcessNotifyRoutine の
PsSetLoadImageNotifyRoutine の