IoGetCurrentIrpStackLocation 関数 (wdm.h)
IoGetCurrentIrpStackLocation ルーチンは、指定された IRP 内の呼び出し元の I/O スタックの場所へのポインターを返します。
__drv_aliasesMem PIO_STACK_LOCATION IoGetCurrentIrpStackLocation(
[in] PIRP Irp
);
[in] Irp
IRP へのポインター。
IoGetCurrentIrpStackLocation は、ドライバーの I/O スタックの場所を含む IO_STACK_LOCATION 構造体へのポインターを返します。
すべてのドライバーは、現在の要求のパラメーターを取得するために、送信される各 IRP で IoGetCurrentIrpStackLocation を呼び出す必要があります。 ドライバーは、ドライバーが処理する各IRP_MJ_XXX コードのディスパッチ ルーチンを提供する場合を除き、ドライバーも要求されている操作を決定する IRP の I/O スタックの場所をチェックする必要があります。
ドライバーが次の下位のドライバーに受信したのと同じパラメーターを渡す場合は、次の下位のスタックの場所へのポインターを取得してパラメーターを手動でコピーする代わりに、 IoCopyCurrentIrpStackLocationToNext または IoSkipCurrentIrpStackLocation を呼び出す必要があります。
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 以降で使用できます。 |
対象プラットフォーム | デスクトップ |
Header | wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む) |
IRQL | 任意のレベル |