Bagikan melalui


Makro FsRtlSetupAdvancedHeaderEx2 (ntifs.h)

Makro FsRtlSetupAdvancedHeaderEx2 digunakan oleh sistem file untuk menginisialisasi struktur FSRTL_ADVANCED_FCB_HEADER untuk digunakan dengan konteks aliran dan file.

Sintaks

void FsRtlSetupAdvancedHeaderEx2(
   _advhdr,
   _fmutx,
   _fctxptr,
   _aepushlock
);

Parameter

_advhdr

Arahkan ke struktur FSRTL_ADVANCED_FCB_HEADER yang akan diinisialisasi.

_fmutx

Penunjuk ke mutex cepat yang diinisialisasi yang akan digunakan untuk menyinkronkan akses ke anggota FSRTL_ADVANCED_FCB_HEADER tertentu. Mutex cepat harus dialokasikan dari kumpulan yang tidak disebarkan. Parameter ini bersifat opsional dan dapat berupa NULL. Penelepon harus mengatur parameter ini ke NULL jika mereka berniat menggunakan objek mutex cepat yang sudah ada. Jika FastMutexADALAH NULL, pemanggil harus secara eksplisit mengatur anggota FastMutex dari struktur FSRTL_ADVANCED_FCB_HEADER , yang terkandung dalam objek konteks aliran, untuk menunjuk ke mutex cepat yang ada. (Ini dapat dilakukan sebelum atau sesudah memanggil FsRtlSetupAdvancedHeaderEx2.)

_fctxptr

Penunjuk ke bidang penunjuk yang digunakan oleh pustaka runtime sistem file (FSRTL) untuk melacak konteks file. Parameter ini bersifat opsional dan dapat berupa NULL. Jika FileContextSupportPointer bukan NULL, FileContextSupportPointer harus menjadi penunjuk ke variabel PVOID di dalam struktur per file untuk sistem file yang membuat struktur. Untuk menunjukkan bahwa driver sistem file tidak mendukung konteks file, pemanggil harus mengatur FileContextSupportPointer ke NULL.

_aepushlock

Penunjuk ke struktur buram yang digunakan untuk menginisialisasi bidang AePushLock dari header tingkat lanjut. Pemanggil fungsi ini bertanggung jawab untuk terlebih dahulu mengalokasikan dan menginisialisasi memori untuk bidang ini dengan memanggil FsRtlAllocateAePushLock, dan kemudian membebaskan memori dengan memanggil FsRtlFreeAePushLock. Lihat FSRTL_ADVANCED_FCB_HEADER untuk informasi selengkapnya tentang kunci pendorongan perluasan otomatis.

Mengembalikan nilai

Tidak ada

Keterangan

Sistem file menggunakan makro FsRtlSetupAdvancedHeaderEx2 untuk menginisialisasi struktur FSRTL_ADVANCED_FCB_HEADER untuk digunakan dengan konteks aliran dan file.

Ketika struktur header FCB tingkat lanjut tidak lagi diperlukan, sistem file harus memanggil FsRtlTeardownPerStreamContexts untuk membebaskan semua aliran terkait dan struktur konteks file.

Untuk informasi selengkapnya, lihat Melacak konteks Per-Stream dalam Driver Filter Sistem File Warisan.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 10, version 20H2
Header ntifs.h

Lihat juga

FSRTL_ADVANCED_FCB_HEADER

FSRTL_PER_STREAM_CONTEXT

FsRtlAllocateAePushLock

FsRtlFreeAePushLock

FsRtlInitPerStreamContext

FsRtlInsertPerStreamContext

FsRtlLookupPerStreamContext

FsRtlRemovePerStreamContext

FsRtlSupportsPerStreamContexts

FsRtlTeardownPerStreamContexts