FsRtlInsertPerFileObjectContext 関数 (ntifs.h)
"レガシ" ファイル システム フィルター ドライバーの場合、 FsRtlInsertPerFileObjectContext 関数はコンテキスト情報をファイル オブジェクトに関連付けます。
構文
NTSTATUS FsRtlInsertPerFileObjectContext(
[in] PFILE_OBJECT FileObject,
[in] PFSRTL_PER_FILEOBJECT_CONTEXT Ptr
);
パラメーター
[in] FileObject
コンテキスト情報を関連付けるファイル オブジェクトへのポインター ( Ptr パラメーターによって指定)。
[in] Ptr
FileObject に関連付けられる呼び出し元によって割り当てられ、初期化FSRTL_PER_FILEOBJECT_CONTEXT構造体へのポインター。 構造体は、そのまま使用することも、ドライバー定義のファイルごとのオブジェクトごとのコンテキスト情報構造に埋め込んだりすることもできます。 構造体を初期化するには、 FsRtlInitPerFileObjectContext マクロを 使用します。
戻り値
FsRtlInsertPerFileObjectContext は 、次のいずれかの適切な NTSTATUS 値を返します。
リターン コード | 説明 |
---|---|
|
コンテキスト情報構造がファイル オブジェクトに正常に関連付けられました。 |
|
FileObject パラメーターは NULL です。 |
|
システムには、操作を完了するための十分なリソースがありません。 たとえば、 FileObject にファイル オブジェクト拡張子を割り当てることができませんでした。 |
注釈
ファイル システム フィルター ドライバーは 、FsRtlInsertPerFileObjectContext を呼び出して、ファイル オブジェクトごとの独自のコンテキスト構造をファイル オブジェクトに関連付けます。 コンテキスト構造には、フィルター ドライバーがファイル オブジェクトに対して保持するコンテキスト情報が含まれています。 FsRtlInsertPerStreamContext 関数は、FileObject のコンテキスト リストに Ptr コンテキスト構造を挿入します。
ファイルオブジェクトごとのコンテキスト情報構造体はすべて、初期化されたFSRTL_PER_FILEOBJECT_CONTEXT構造体であるか、含まれている必要があります。 FsRtlInitPerFileObjectContext マクロを使用して、FSRTL_PER_FILEOBJECT_CONTEXT構造体を初期化します。
FSRTL_PER_FILEOBJECT_CONTEXT構造体またはフィルター定義のファイル オブジェクトごとのコンテキスト構造 (初期化されたFSRTL_PER_FILEOBJECT_CONTEXT構造体を含む) がファイル オブジェクトに関連付けられた後、 FsRtlLookupPerFileObjectContext を呼び出して取得するか、 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 を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示