structure FILE_FS_PERSISTENT_VOLUME_INFORMATION (ntifs.h)
La structure FILE_FS_PERSISTENT_VOLUME_INFORMATION est utilisée pour contrôler les paramètres persistants d’un volume de système de fichiers. Les paramètres persistants persistent sur un volume de système de fichiers entre les redémarrages de l’ordinateur.
Syntaxe
typedef struct _FILE_FS_PERSISTENT_VOLUME_INFORMATION {
ULONG VolumeFlags;
ULONG FlagMask;
ULONG Version;
ULONG Reserved;
} FILE_FS_PERSISTENT_VOLUME_INFORMATION, *PFILE_FS_PERSISTENT_VOLUME_INFORMATION;
Membres
VolumeFlags
Paramètres d’état persistant pour un volume de système de fichiers. Cette valeur est une combinaison OR au niveau du bit des éléments suivants.
Valeur | Signification |
---|---|
PERSISTENT_VOLUME_STATE_SHORT_NAME_CREATION_DISABLED 0x00000001 | Un 0 pour ce bit indique que la création de noms courts 8.3 est activée et qu’un 1 indique que la création de noms courts est désactivée. 8.3 Les noms de fichiers courts ont au plus huit caractères, suivis d’une période « » et d’une extension de nom de fichier d’au plus trois caractères. |
PERSISTENT_VOLUME_STATE_VOLUME_SCRUB_DISABLED 0x00000002 | Lorsqu’il est défini, cet indicateur indique que le nettoyage du volume est désactivé pour le volume. Valide à partir de Windows 8. |
PERSISTENT_VOLUME_STATE_GLOBAL_METADATA_NO_SEEK_PENALTY 0x00000004 | Aucune pénalité de recherche globale n’est activée pour un volume hiérarchisé. Valide à partir de Windows 8.1. |
PERSISTENT_VOLUME_STATE_LOCAL_METADATA_NO_SEEK_PENALTY 0x00000008 | Aucune pénalité de recherche locale n’est activée pour un volume hiérarchisé. Valide à partir de Windows 8.1. |
PERSISTENT_VOLUME_STATE_NO_HEAT_GATHERING 0x00000010 | Lorsqu’il est défini, la collecte de chaleur n’est pas activée pour le volume hiérarchisé. Valide à partir de Windows 8.1. |
PERSISTENT_VOLUME_STATE_CONTAINS_BACKING_WIM 0x00000020 | Indique que ce volume sauvegarde le volume système avec des fichiers à partir d’un fichier WIM (Windows Image Format). Valide à partir de la mise à jour de Windows 8.1. |
PERSISTENT_VOLUME_STATE_BACKED_BY_WIM 0x00000040 | Indique que ce volume dépend d’un autre volume pour fournir des fichiers de démarrage critiques système. L’autre volume contient un fichier WIM qui sauvegarde les fichiers sur ce volume. Cet indicateur est en lecture seule. Valide à partir de la mise à jour de Windows 8.1. |
PERSISTENT_VOLUME_STATE_DEV_VOLUME 0x00002000 | Indique que ce volume est mis en forme en tant que volume développeur. Cela peut être utilisé par le système de fichiers et d’autres composants système pour activer les optimisations qui ne nécessitent pas d’administrateur d’approuver le volume sur un ordinateur donné. Valide à partir de Windows 11, version 22H2 Mise à jour de septembre. |
PERSISTENT_VOLUME_STATE_TRUSTED_VOLUME 0x00004000 | Indique qu’un administrateur sur un ordinateur donné a approuvé ce volume et est prêt à activer des optimisations comme ne pas avoir de filtres antivirus attachés au volume. Ces informations sont conservées dans le Registre sur un ordinateur donné. Cela peut être utilisé par le système de fichiers et d’autres composants système pour permettre aux optimisations qui nécessitent un administrateur d’approuver le volume sur un ordinateur donné. Valide à partir de Windows 11, version 22H2 Mise à jour de septembre. |
FlagMask
Valeur de masque pour les indicateurs valides qui peuvent apparaître dans VolumeFlags. Il s’agit d’une combinaison OR au niveau du bit des indicateurs souhaités décrits pour VolumeFlags.
Version
Numéro de version de cette structure. Défini sur 1.
Reserved
Réservé. Défini sur 0 ;
Remarques
La structure FILE_FS_PERSISTENT_VOLUME_INFORMATION est utilisée avec les codes de contrôle FSCTL_SET_PERSISTENT_VOLUME_STATE et FSCTL_QUERY_PERSISTENT_VOLUME_STATE.
Pour interroger les indicateurs d’état, indicateur est défini sur une combinaison d’indicateurs à rechercher. Par exemple, si les seuls indicateurs de pénalité de recherche sont intéressés, FlagMask = PERSISTENT_VOLUME_STATE_GLOBAL_METADATA_NO_SEEK_PENALTY | PERSISTENT_VOLUME_STATE_LOCAL_METADATA_NO_SEEK_PENALTY. En outre, si seule la prise en charge du nom court est interrogée, définissez FlagMask = PERSISTENT_VOLUME_STATE_SHORT_NAME_CREATION_DISABLED.
Lors de la définition ou de l’effacement des indicateurs d’état du volume persistant, à l’aide de FSCTL_SET_PERSISTENT_VOLUME_STATE, flagMask est défini sur tous les indicateurs dans VolumeFlags qui seront affectés pour le volume. VolumeFlags contient les indicateurs d’état persistants réels à définir pour le volume. L’exemple suivant montre comment définir les membres de FILE_FS_PERSISTENT_VOLUME_INFORMATION pour activer la création de nom court pour un volume.
IO_STATUS_BLOCK IoStatus;
FILE_FS_PERSISTENT_VOLUME_INFORMATION PersistVolInfo;
NTSTATUS status;
PersistVolInfo.VolumeFlags = 0; // enable shortname creation on this volume
PersistVolInfo.FlagMask = PERSISTENT_VOLUME_STATE_SHORT_NAME_CREATION_DISABLED;
PersistVolInfo.Version = 1;
PersistVolInfo.Reserved = 0;
// issue the request to the file system to set the enable state
//
status = ZwFsControlFile( VolumeHandle,
NULL,
NULL,
NULL,
&IoStatus,
FSCTL_SET_PERSISTENT_VOLUME_STATE,
&PersistVolInfo,
sizeof(FILE_FS_PERSISTENT_VOLUME_INFORMATION),
NULL,
0 );
Le membre version doit être défini sur la version actuelle de 1 pour une requête et une requête définie.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows 7 |
d’en-tête | ntifs.h (include Ntifs.h) |