次の方法で共有


PsSetLoadImageNotifyRoutine 関数 (ntddk.h)

PsSetLoadImageNotifyRoutine ルーチンは、イメージ (DLL や EXE など) が読み込まれる (またはメモリにマップされる) たびに、ドライバーが指定したコールバックを登録します。

構文

NTSTATUS PsSetLoadImageNotifyRoutine(
  [in] PLOAD_IMAGE_NOTIFY_ROUTINE NotifyRoutine
);

パラメーター

[in] NotifyRoutine

読み込みイメージ通知の呼び出し元によって実装された PLOAD_IMAGE_NOTIFY_ROUTINE コールバック ルーチンへのポインター。

戻り値

PsSetLoadImageNotifyRoutine は、STATUS_SUCCESSを返すか、コールバックの登録に失敗した場合にSTATUS_INSUFFICIENT_RESOURCESを返します。

備考

最上位レベルのシステム プロファイル ドライバーは、psSetLoadImageNotifyRoutine を呼び出して、読み込みイメージ通知ルーチンを設定できます (PLOAD_IMAGE_NOTIFY_ROUTINEを参照)。

読み込みイメージ通知を受信するために同時に登録できるドライバーの最大数は 8 です。 ドライバーが PsSetLoadImageNotifyRoutine を呼び出 して追加の通知ルーチンを登録しようとしたときに、読み込みイメージ通知ルーチンの最大数が既に登録されている場合、psSetLoadImageNotifyRoutine 失敗し、STATUS_INSUFFICIENT_RESOURCESが返されます。

ノート

  • Windows 8.1 の更新プログラムでは、読み込みイメージ通知を受信するために登録されたドライバーの最大数が 8 から 64 に増えます。 この更新プログラムは、2014 年 4 月 8 日から Windows Update で利用可能な累積的な更新プログラムの一部としてインストールされます。 さらに、この累積的な更新プログラムは、https://support.microsoft.com/kb/2919355で入手できます。
  • Windows 7 Service Pack 1 (SP1) のユーザーは、修正プログラムをインストールして、ロード イメージ通知を受信するために登録されたドライバーの最大数を 8 から 64 に増やすことができます。 この修正プログラムは、https://support.microsoft.com/kb/2922790で入手できます。
ドライバーは、アンロードする前に登録されているコールバックを削除する必要があります。 PsRemoveLoadImageNotifyRoutine ルーチンを呼び出すことによって、コールバックを削除できます。

必要条件

要件 価値
サポートされる最小クライアント Windows 2000 以降で使用できます。
ターゲット プラットフォーム 万国
ヘッダー ntddk.h (Ntddk.h を含む)
ライブラリ NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
DDI コンプライアンス規則 する HwStorPortProhibitedDDDIs(storport), IrqlPsPassive(wdm), PowerIrpDDis(wdm)

関連項目

PLOAD_IMAGE_NOTIFY_ROUTINE

PsGetCurrentProcessId

PsRemoveLoadImageNotifyRoutine

PsSetCreateProcessNotifyRoutine

PsSetCreateThreadNotifyRoutine する