次の方法で共有


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 任意のレベル

こちらもご覧ください

IO_STACK_LOCATION

IRP

IoCallDriver

IoGetNextIrpStackLocation

IoSetNextIrpStackLocation