KeInitializeDpc 関数 (wdm.h)
KeInitializeDpc ルーチンは DPC オブジェクトを初期化し、そのオブジェクトの CustomDpc ルーチンを登録します。
構文
void KeInitializeDpc(
[out] __drv_aliasesMem PRKDPC Dpc,
[in] PKDEFERRED_ROUTINE DeferredRoutine,
[in, optional] __drv_aliasesMem PVOID DeferredContext
);
パラメーター
[out] Dpc
初期化する DPC オブジェクトを表す KDPC 構造体へのポインター。 呼び出し元は、常駐メモリから構造体のストレージを割り当てる必要があります。
[in] DeferredRoutine
DPC に関連付ける CustomDpc ルーチンへのポインター。
[in, optional] DeferredContext
DeferredContext パラメーターとして CustomDpc に渡す値を指定します。
戻り値
なし
解説
呼び出し元は、 KeInsertQueueDpc を使用して初期化された DPC をキューに登録できます。 呼び出し元は、初期化された DPC オブジェクトに関連付けられているタイマー オブジェクトを設定し、 KeSetTimer を使用して DPC をキューに入れることもできます。
DPC オブジェクトの記憶域は、ドライバーによって作成されたデバイス オブジェクトのデバイス拡張機能、ドライバーによって作成されたコントローラー オブジェクトのコントローラー拡張機能、または呼び出し元によって割り当てられた非ページ プール内に存在する必要があります。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 以降で使用できます。 |
対象プラットフォーム | ユニバーサル |
Header | wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む) |
Library | NtosKrnl.lib |
[DLL] | NtosKrnl.exe |
IRQL | 任意のレベル |