IoGetTopLevelIrp 関数 (ntifs.h)

IoGetTopLevelIrp ルーチンは、現在のスレッドの TopLevelIrp フィールドの値を返します。

構文

PIRP IoGetTopLevelIrp();

戻り値

IoGetTopLevelIrp は、現在のスレッドの TopLevelIrp フィールドの値を返します。

注釈

IoGetTopLevelIrp、NULL、任意のファイル システム固有の値 (現在の IRP へのポインターなど)、または次の表に示すフラグのいずれかを返すことができます。

現在のスレッドがファイル システムの上にリソースを保持していない場合、 IoGetTopLevelIrpNULL を返します。

ファイル システムが現在のスレッドの最上位コンポーネントである場合、 IoGetTopLevelIrp は現在の IRP へのポインターを返します。

ファイル システム以外のコンポーネントが現在のスレッドの最上位コンポーネントである場合、 IoGetTopLevelIrp は次のいずれかのフラグを返します。

フラグ 説明
FSRTL_FSP_TOP_LEVEL_IRP これは再帰呼び出しです。
FSRTL_CACHE_TOP_LEVEL_IRP キャッシュ マネージャーは、現在のスレッドの最上位コンポーネントです。
FSRTL_MOD_WRITE_TOP_LEVEL_IRP 変更されたページ ライターは、現在のスレッドの最上位コンポーネントです。
FSRTL_FAST_IO_TOP_LEVEL_IRP キャッシュ マネージャーは現在のスレッドの最上位コンポーネントであり、現在のスレッドは高速 I/O パスにあります。

要件

要件
対象プラットフォーム ユニバーサル
Header ntifs.h (Ntifs.h、Wdm.h を含む)
Library NtosKrnl.lib
[DLL] NtosKrnl.exe
IRQL <= DISPATCH_LEVEL

こちらもご覧ください

IoSetTopLevelIrp