FsRtlSetupAdvancedHeaderEx2 マクロ (ntifs.h)
FsRtlSetupAdvancedHeaderEx2 マクロは、ストリームおよびファイル コンテキストで使用するFSRTL_ADVANCED_FCB_HEADER構造体を初期化するためにファイル システムによって使用されます。
構文
void FsRtlSetupAdvancedHeaderEx2(
_advhdr,
_fmutx,
_fctxptr,
_aepushlock
);
パラメーター
_advhdr
初期化する FSRTL_ADVANCED_FCB_HEADER 構造体へのポインター。
_fmutx
特定の FSRTL_ADVANCED_FCB_HEADER メンバーへのアクセスを同期するために使用される、初期化された高速ミューテックスへのポインター。 高速ミューテックスは、非ページ プールから割り当てる必要があります。 このパラメーターは省略可能であり、 NULL にすることができます。 呼び出し元は、既存の高速ミューテックス オブジェクトを使用する場合は、このパラメーターを NULL に 設定する必要があります。 FastMutex が NULL の場合、呼び出し元は、ストリーム コンテキスト オブジェクトに含まれるFSRTL_ADVANCED_FCB_HEADER構造体の FastMutex メンバーを明示的に設定して、既存の高速ミューテックスを指す必要があります。 (これは、 FsRtlSetupAdvancedHeaderEx2 を呼び出す前または後に行うことができます)。
_fctxptr
ファイル システム ランタイム ライブラリ (FSRTL) がファイル コンテキストを追跡するために使用するポインター フィールドへのポインター。 このパラメーターは省略可能であり、 NULL にすることができます。 FileContextSupportPointer が NULL でない場合、FileContextSupportPointer は、構造を作成したファイル システムのファイルごとの構造内の PVOID 変数へのポインターである必要があります。 ファイル システム ドライバーがファイル コンテキストをサポートしていないことを示すには、呼び出し元が FileContextSupportPointer を NULL に設定する必要があります。
_aepushlock
高度なヘッダーの AePushLock フィールドを初期化するために使用される不透明な構造体へのポインター。 この関数の呼び出し元は、最初に FsRtlAllocateAePushLock を呼び出してこのフィールドのメモリを割り当て、初期化し、その後 FsRtlFreeAePushLock を呼び出してメモリを解放します。 自動拡張プッシュ ロックの詳細については、「 FSRTL_ADVANCED_FCB_HEADER 」を参照してください。
戻り値
なし
解説
ファイル システムでは 、FsRtlSetupAdvancedHeaderEx2 マクロを使用して 、 ストリームおよびファイル コンテキストで使用するFSRTL_ADVANCED_FCB_HEADER構造体を初期化します。
高度な FCB ヘッダー構造が不要になった場合、ファイル システムは FsRtlTeardownPerStreamContexts を呼び出して、関連付けられているすべてのストリームおよびファイル コンテキスト構造を解放する必要があります。
詳細については、「 レガシ ファイル システム フィルター ドライバーでの追跡 Per-Stream コンテキスト」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 10、バージョン 20H2 |
Header | ntifs.h |
こちらもご覧ください
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示