Partager via


Macro FsRtlSetupAdvancedHeaderEx (ntifs.h)

La macro FsRtlSetupAdvancedHeaderEx est utilisée par les systèmes de fichiers pour initialiser une structure FSRTL_ADVANCED_FCB_HEADER à utiliser avec des contextes de flux et de fichiers.

Syntaxe

void FsRtlSetupAdvancedHeaderEx(
   _advhdr,
   _fmutx,
   _fctxptr
);

Paramètres

_advhdr

Pointeur vers la structure FSRTL_ADVANCED_FCB_HEADER à initialiser.

_fmutx

Pointeur vers un mutex rapide initialisé qui sera utilisé pour synchroniser l’accès à certains membres FSRTL_ADVANCED_FCB_HEADER . Le mutex rapide doit être alloué à partir d’un pool non paginé. Ce paramètre est facultatif et peut être NULL. Les appelants doivent définir ce paramètre sur NULL s’ils ont l’intention d’utiliser un objet mutex rapide déjà existant. Si FastMutex a la valeur NULL, l’appelant doit définir explicitement le membre FastMutex de la structure FSRTL_ADVANCED_FCB_HEADER , contenu dans l’objet de contexte de flux, pour pointer vers le mutex rapide existant. (Cette opération peut être effectuée avant ou après l’appel de FsRtlSetupAdvancedHeaderEx.)

_fctxptr

Pointeur vers un champ de pointeur utilisé par la bibliothèque de runtime de système de fichiers (FSRTL) pour suivre les contextes de fichiers. Ce paramètre est facultatif et peut être NULL. En particulier :

  • Pour les systèmes d’exploitation Microsoft Windows publiés avant Windows Vista, les appelants doivent définir ce paramètre sur NULL.

  • Pour les systèmes d’exploitation Windows commençant par Windows Vista : si FileContextSupportPointer n’a pas la valeur NULL, FileContextSupportPointer doit être un pointeur vers une variable PVOID à l’intérieur d’une structure par fichier pour le système de fichiers qui a créé la structure. Pour indiquer que le pilote de système de fichiers ne prend pas en charge les contextes de fichiers, les appelants doivent définir FileContextSupportPointer sur NULL.

Valeur de retour

None

Remarques

Les systèmes de fichiers utilisent la macro FsRtlSetupAdvancedHeaderEx pour initialiser une structure de FSRTL_ADVANCED_FCB_HEADER à utiliser avec des contextes de flux et de fichiers.

Lorsque la structure d’en-tête FCB avancée n’est plus requise, le système de fichiers doit appeler FsRtlTeardownPerStreamContexts pour libérer toutes les structures de flux et de contexte de fichiers associées.

Pour plus d’informations, consultez Suivi Per-Stream contexte dans un pilote de filtre de système de fichiers hérité.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Correctif cumulatif pour Microsoft Windows 2000 Service Pack 4 (SP4) ; Windows XP
Plateforme cible Desktop (Expérience utilisateur)
En-tête ntifs.h (include Ntifs.h, Fltkernel.h)
IRQL PASSIVE_LEVEL

Voir aussi

FSRTL_ADVANCED_FCB_HEADER

FSRTL_PER_STREAM_CONTEXT

FsRtlGetPerStreamContextPointer

FsRtlInitPerStreamContext

FsRtlInsertPerStreamContext

FsRtlLookupPerStreamContext

FsRtlRemovePerStreamContext

FsRtlSupportsPerStreamContexts

FsRtlTeardownPerStreamContexts