FSRTL_PER_STREAM_CONTEXT構造体 (ntifs.h)
FSRTL_PER_STREAM_CONTEXT 構造体には、ファイル システム フィルター ドライバーがファイル ストリームについて保持するコンテキスト情報が含まれています。
構文
typedef struct _FSRTL_PER_STREAM_CONTEXT {
LIST_ENTRY Links;
PVOID OwnerId;
PVOID InstanceId;
PFREE_FUNCTION FreeCallback;
} FSRTL_PER_STREAM_CONTEXT, *PFSRTL_PER_STREAM_CONTEXT;
メンバーズ
Links
同じファイル ストリームに関連付けられているすべてのストリームごとのコンテキスト構造の一覧で、この構造体のリンク。 FsRtlInsertPerStreamContext
OwnerId
ストリームごとのコンテキスト構造の所有者を一意に識別するフィルター ドライバーによって割り当てられた変数へのポインター。 この変数の形式は、フィルター ドライバー固有です。 フィルター ライターは、ドライバー オブジェクトやデバイス オブジェクトのアドレスなど、意味のある便利な値を選択する必要があります。 フィルター ドライバーは、このメンバーを非NULL 値に設定する必要があります。
InstanceId
同じフィルター ドライバーによって作成されたストリームごとのコンテキスト構造を区別するために使用できる、フィルター ドライバーによって割り当てられた変数へのポインター。 この変数の形式は、フィルター ドライバー固有です。 フィルター ライターは、ファイル ストリームのストリーム コンテキスト オブジェクトのアドレスなど、意味のある便利な値を選択する必要があります。 (ファイル オブジェクトからこのアドレスを取得するには、FsRtlGetPerStreamContextPointer マクロを使用します)。
このメンバーは省略可能であり、NULL
FreeCallback
ストリームごとのコンテキスト構造を解放するコールバック ルーチンへのポインター。 このルーチンとそのパラメーターは、次のように定義されます。
VOID
(*PFREE_FUNCTION) (
IN PVOID Buffer
);
バッファ
解放する FSRTL_PER_STREAM_CONTEXT 構造体へのポインター。
備考
ファイル システム フィルター ドライバーは、FSRTL_PER_STREAM_CONTEXT 構造体を使用して、ファイル ストリームのコンテキスト情報を維持できます。 この構造体は、そのまま使用することも、ドライバー定義のストリームごとのコンテキスト構造に埋め込んだりすることもできます。
ファイル システムは、ファイル ストリームのストリーム コンテキスト オブジェクトを破棄するときに、fsRtlTeardownPerStreamContexts
FsRtlSupportsPerStreamContexts マクロは、ファイル システムが特定のファイル ストリームのストリームごとのコンテキストをサポートするかどうかを決定します。
BOOLEAN FsRtlSupportsPerStreamContexts(
[in] PFILE_OBJECT FileObject
);
パラメーター
FileObject [in]
PFILE_OBJECT
ファイル ストリームのファイル オブジェクトへのポインター。
戻り値
BOOLEAN
ファイル システム フィルター ドライバー FsRtlSupportsPerStreamContexts を呼び出して、基になるファイル システムが、特定のファイル オブジェクトによって表されるファイル ストリームのストリームごとのコンテキストをサポートしているかどうかを判断します。 ファイル システムでは、一部の種類のファイルではストリームごとのコンテキストがサポートされる場合がありますが、他の種類のファイルではサポートされないことに注意してください。 たとえば、NTFS と FAT は現在、ページング ファイルのストリームごとのコンテキストをサポートしていません。
詳細については、「レガシ ファイル システム フィルター ドライバーの
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | この構造は Windows XP です |
ヘッダー | ntifs.h (Ntifs.h を含む) |
関連項目
FsRtlGetPerStreamContextPointer の
FsRtlTeardownPerStreamContexts
レガシ ファイル システム フィルター ドライバー の