次の方法で共有


POB_POST_OPERATION_CALLBACK コールバック関数 (wdm.h)

ObjectPostCallback ルーチンは、プロセスまたはスレッド ハンドル操作が発生した後、オペレーティング システムによって呼び出されます。

警告

このコールバックで実行できるアクションは、安全な呼び出しに対して制限されます。 詳細については、「 Windows Kernel-Mode プロセスとスレッド マネージャー」を参照してください。

構文

POB_POST_OPERATION_CALLBACK PobPostOperationCallback;

void PobPostOperationCallback(
  [in] PVOID RegistrationContext,
  [in] POB_POST_OPERATION_INFORMATION OperationInformation
)
{...}

パラメーター

[in] RegistrationContext

ドライバーが ObRegisterCallbacks ルーチンの CallBackRegistration-RegistrationContext> パラメーターとして指定するコンテキスト。 この値の意味はドライバー定義です。

[in] OperationInformation

ハンドル操作のパラメーターを指定する OB_POST_OPERATION_INFORMATION 構造体へのポインター。

戻り値

なし

解説

ObRegisterCallbacks ルーチンを使用して ObjectPostCallback ルーチンを登録し、ObUnRegisterCallbacks ルーチンを使用してルーチンの登録を解除します。

ObjectPostCallback ルーチンは、プロセス ハンドルまたはスレッド ハンドルに対する操作が完了した後に呼び出されますが、ObjectPreCallback ルーチンは操作が発生する前に呼び出されます。 ObjectPreCallback ルーチンの OperationInformation パラメーターは、変更できる情報を含むOB_PRE_OPERATION_INFORMATION構造体へのポインターです。 これに対し、ObjectPostCallback ルーチンの OperationInformation パラメーターは、OB_POST_OPERATION_INFORMATION構造体へのポインターです。 この構造体の内容は情報であり、変更することはできません。

このルーチンは、通常のカーネル APC が無効になっている任意のスレッド コンテキストでPASSIVE_LEVELで呼び出されます。 特殊なカーネル API は無効になっていません。 APC の詳細については、「APC の種類」を参照してください。

要件

要件
サポートされている最小のクライアント Windows Server 2008 以降で使用できます。
対象プラットフォーム デスクトップ
Header wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む)
IRQL PASSIVE_LEVELで呼び出されます (「解説」セクションを参照)。

こちらもご覧ください

OB_POST_OPERATION_INFORMATION

ObRegisterCallbacks

ObUnRegisterCallbacks

ObjectPreCallback