Макрос FsRtlSetupAdvancedHeaderEx (ntifs.h)

Макрос FsRtlSetupAdvancedHeaderEx используется файловыми системами для инициализации структуры FSRTL_ADVANCED_FCB_HEADER для использования с контекстами потока и файла.

Синтаксис

void FsRtlSetupAdvancedHeaderEx(
   _advhdr,
   _fmutx,
   _fctxptr
);

Параметры

_advhdr

Указатель на инициализируемый FSRTL_ADVANCED_FCB_HEADER структуру.

_fmutx

Указатель на инициализированный быстрый мьютекс, который будет использоваться для синхронизации доступа к определенным FSRTL_ADVANCED_FCB_HEADER элементам. Быстрый мьютекс должен быть выделен из пула без паг. Этот параметр является необязательным и может иметь значение NULL. Вызывающие объекты должны присвоить этому параметру значение NULL , если они намерены использовать уже существующий объект быстрого мьютекса. Если FastMutex имеет значение NULL, вызывающий объект должен явно задать элемент FastMutexFSRTL_ADVANCED_FCB_HEADER структуры, содержащейся в объекте контекста потока, чтобы он указывал на существующий быстрый мьютекс. (Это можно сделать до или после вызова FsRtlSetupAdvancedHeaderEx.)

_fctxptr

Указатель на поле указателя, используемое библиотекой среды выполнения файловой системы (FSRTL) для отслеживания контекстов файлов. Этот параметр является необязательным и может иметь значение NULL. В частности:

  • Для операционных систем Microsoft Windows, выпущенных до Windows Vista, вызывающие абоненты должны задать для этого параметра значение NULL.

  • Для операционных систем Windows, начиная с Windows Vista: если fileContextSupportPointer не имеет значение NULL, FileContextSupportPointer должен быть указателем на переменную PVOID внутри структуры файла для файловой системы, создающей структуру. Чтобы указать, что драйвер файловой системы не поддерживает контексты файлов, вызывающие элементы должны присвоить fileContextSupportPointer значение NULL.

Возвращаемое значение

None

Remarks

Файловые системы используют макрос FsRtlSetupAdvancedHeaderEx для инициализации структуры FSRTL_ADVANCED_FCB_HEADER для использования с контекстами потоков и файлов.

Если расширенная структура заголовков FCB больше не требуется, файловая система должна вызывать FsRtlTeardownPerStreamContexts , чтобы освободить все связанные структуры потока и контекста файлов.

Дополнительные сведения см. в разделе Отслеживание Per-Stream контекста в устаревшем драйвере фильтра файловой системы.

Требования

Требование Значение
Минимальная версия клиента Накопительный пакет обновления для Microsoft Windows 2000 с пакетом обновления 4 (SP4); Windows XP
Целевая платформа Персональный компьютер
Верхняя часть ntifs.h (включая Ntifs.h, Fltkernel.h)
IRQL PASSIVE_LEVEL

См. также раздел

FSRTL_ADVANCED_FCB_HEADER

FSRTL_PER_STREAM_CONTEXT

FsRtlGetPerStreamContextPointer

FsRtlInitPerStreamContext

FsRtlInsertPerStreamContext

FsRtlLookupPerStreamContext

FsRtlRemovePerStreamContext

FsRtlSupportsPerStreamContexts

FsRtlTeardownPerStreamContexts