POB_PRE_OPERATION_CALLBACK コールバック関数 (wdm.h)
ObjectPreCallback ルーチンは、プロセスまたはスレッド ハンドル操作が発生したときにオペレーティング システムによって呼び出されます。
警告
このコールバックで実行できるアクションは、安全な呼び出しに対して制限されます。 詳細については、「 Windows Kernel-Mode プロセスとスレッド マネージャー」を参照してください。
構文
POB_PRE_OPERATION_CALLBACK PobPreOperationCallback;
OB_PREOP_CALLBACK_STATUS PobPreOperationCallback(
[in] PVOID RegistrationContext,
[in] POB_PRE_OPERATION_INFORMATION OperationInformation
)
{...}
パラメーター
[in] RegistrationContext
ドライバーが ObRegisterCallbacks ルーチンの CallBackRegistration-RegistrationContext> パラメーターとして指定するコンテキスト。 この値の意味はドライバー定義です。
[in] OperationInformation
ハンドル操作のパラメーターを指定する OB_PRE_OPERATION_INFORMATION 構造体へのポインター。
戻り値
ObjectPreCallback は、OB_PREOP_CALLBACK_STATUS値を返します。 ドライバーはOB_PREOP_SUCCESSを返す必要があります。
注釈
ObRegisterCallbacks ルーチンを使用して ObjectPreCallback ルーチンを登録し、ObUnRegisterCallbacks ルーチンを使用してルーチンの登録を解除します。
このルーチンは、通常のカーネル APC が無効になっている任意のスレッド コンテキストでPASSIVE_LEVELで呼び出されます。 特殊なカーネル API は無効になっていません。 APC の詳細については、「APC の種類」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Server 2008 以降で使用できます。 |
対象プラットフォーム | デスクトップ |
Header | wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む) |
IRQL | PASSIVE_LEVELで呼び出されます (「解説」セクションを参照)。 |