IoInitializeIrp 関数 (wdm.h)
IoInitializeIrp ルーチンは、呼び出し元によって割り当てられた特定の IRP を初期化します。
構文
void IoInitializeIrp(
[in, out] PIRP Irp,
[in] USHORT PacketSize,
[in] CCHAR StackSize
);
パラメーター
[in, out] Irp
初期化する IRP へのポインター。
[in] PacketSize
IRP のサイズをバイト単位で指定します。
[in] StackSize
IRP 内のスタックの場所の数を指定します。
戻り値
何一つ
備考
ドライバー IoInitializeIrp を使用して、未加工メモリとして割り当てられたドライバーの IRP を初期化します。 IoInitializeIrp 使用して、IoAllocateIrpによって割り当てられた IRP を初期化しないでください。 IoAllocateIrp は、IRP のメンバーを自動的に初期化します。
ドライバーは、ioInitializeIrp を使用して、特定の状況でのみ再利用するために IRP を再初期化できます。 詳細については、IRP の再利用に関するページを参照してください。
ドライバーが割り当てられた IRP に MDL を関連付ける場合、ドライバーは、IRP が完了したときに MDL を解放します。
中間または最上位レベルのドライバーは、IoBuildDeviceIoControlRequest、IoBuildAsynchronousFsdRequest、または IoBuildSynchronousFsdRequest 呼び出して、下位レベルのドライバーに送信する要求を設定することもできます。 IoMakeAssociatedIrp 呼び出すことができるのは最上位ドライバーだけです。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 2000 以降で使用できます。 |
ターゲット プラットフォーム の | 万国 |
ヘッダー | wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む) |
ライブラリ | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= DISPATCH_LEVEL |
DDI コンプライアンス規則 を する | HwStorPortProhibitedDDIs(storport), IoReuseIrp(wdm) |
関連項目
IoAllocateIrp の
IoAllocateMdl の
IoFreeIrp の
IoFreeMdl の
IoReuseIrp の
IoSetNextIrpStackLocation の
IoSizeOfIrp の