FsRtlLookupPerFileObjectContext 関数 (ntifs.h)
"レガシ" ファイル システム フィルター ドライバーの場合、 FsRtlLookupPerFileObjectContext 関数は、以前にファイル オブジェクトに関連付けられたコンテキスト情報を取得します。
構文
PFSRTL_PER_FILEOBJECT_CONTEXT FsRtlLookupPerFileObjectContext(
[in] PFILE_OBJECT FileObject,
[in, optional] PVOID OwnerId,
[in, optional] PVOID InstanceId
);
パラメーター
[in] FileObject
コンテキスト情報のクエリを実行するファイル オブジェクトへのポインター。
[in, optional] OwnerId
ファイルオブジェクトごとのコンテキスト構造の所有フィルターを一意に識別する呼び出し元割り当て変数へのポインター。 この変数の形式は、フィルター ドライバー固有です。
[in, optional] InstanceId
同じフィルター ドライバーによって作成されたファイルオブジェクトごとのコンテキスト構造を区別するために使用できる、呼び出し元によって割り当てられた変数へのポインター。 この変数の形式は、フィルター ドライバー固有です。 このパラメーターは省略可能であり、 NULL にすることができます。
戻り値
FsRtlLookupPerFileObjectContext は、見つかった最初の一致するファイルオブジェクトごとのコンテキストへのポインターを返します。 一致するものが見つからない場合、 FsRtlLookupPerFileObjectContext はNULL を返します。
注釈
"レガシ" ファイル システム フィルター ドライバーは 、FsRtlLookupPerFileObjectContext を呼び出して、ファイル オブジェクトのファイル ごとのコンテキスト構造を取得します。 コンテキスト構造には、フィルター ドライバーがファイル オブジェクトに対して保持するコンテキスト情報が含まれています。 このコンテキスト構造は、 FsRtlInsertPerFileObjectContext 関数を呼び出すことによって、ファイル オブジェクトに以前に関連付けられている必要があります。
FSRTL_PER_FILEOBJECT_CONTEXT構造体が、ファイル オブジェクトごとのコンテキスト構造で定義されたフィルターに埋め込まれている場合は、 CONTAINING_RECORD マクロを使用して、フィルター定義構造体の先頭へのポインターを取得できます。
ファイル オブジェクトごとのコンテキスト構造を初期化するには、 FsRtlInitPerFileObjectContext マクロを 使用します。
初期化されたファイル オブジェクトごとのコンテキスト構造をファイル オブジェクトに関連付けるには、 FsRtlInsertPerFileObjectContext 関数を使用します。
ファイル オブジェクトに関連付けられているファイル オブジェクトごとのコンテキスト構造を削除するには、 FsRtlRemovePerFileObjectContext 関数を使用します。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista |
対象プラットフォーム | ユニバーサル |
Header | ntifs.h (Fltkernel.h、Ntifs.h を含む) |
Library | NtosKrnl.lib |
[DLL] | NtosKrnl.exe |
IRQL | <= APC_LEVEL |
こちらもご覧ください
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示