Partager via


structure FILE_FS_ATTRIBUTE_INFORMATION (ntifs.h)

La structure FILE_FS_ATTRIBUTE_INFORMATION est utilisée pour interroger les informations d’attribut pour un système de fichiers.

Syntaxe

typedef struct _FILE_FS_ATTRIBUTE_INFORMATION {
  ULONG FileSystemAttributes;
  LONG  MaximumComponentNameLength;
  ULONG FileSystemNameLength;
  WCHAR FileSystemName[1];
} FILE_FS_ATTRIBUTE_INFORMATION, *PFILE_FS_ATTRIBUTE_INFORMATION;

Membres

FileSystemAttributes

Masque de bits des indicateurs spécifiant des attributs du système de fichiers spécifié, en tant que combinaison compatible des indicateurs suivants.

Valeur Signification
FILE_CASE_SENSITIVE_SEARCH (0x00000001) Le système de fichiers prend en charge les noms de fichiers respectant la casse.
FILE_CASE_PRESERVED_NAMES (0x00000002) Le système de fichiers conserve le cas des noms de fichiers lorsqu’il place un nom sur le disque.
FILE_UNICODE_ON_DISK (0x00000004) Le système de fichiers prend en charge Unicode dans les noms de fichiers.
FILE_PERSISTENT_ACLS (0x00000008) Le système de fichiers conserve et applique des listes de contrôle d’accès (ACL).
FILE_FILE_COMPRESSION (0x00000010) Le système de fichiers prend en charge la compression basée sur les fichiers. Cet indicateur n’est pas compatible avec l’indicateur FILE_VOLUME_IS_COMPRESSED. Cet indicateur n’affecte pas la façon dont les données sont transférées sur le réseau.
FILE_VOLUME_QUOTAS (0x00000020) Le système de fichiers prend en charge les quotas par utilisateur.
FILE_SUPPORTS_SPARSE_FILES (0x00000040) Le système de fichiers prend en charge les fichiers partiellement alloués.
FILE_SUPPORTS_REPARSE_POINTS (0x00000080) Le système de fichiers prend en charge points d’analyse.
FILE_SUPPORTS_REMOTE_STORAGE (0x00000100) Le système de fichiers prend en charge le stockage distant.
FILE_RETURNS_CLEANUP_RESULT_INFO (0x00000200) Lors d’une opération de nettoyage réussie, le système de fichiers retourne des informations qui décrivent des actions supplémentaires effectuées pendant le nettoyage, telles que la suppression du fichier. Les filtres de système de fichiers peuvent examiner ces informations dans leur rappel post-nettoyage.
FILE_SUPPORTS_POSIX_UNLINK_RENAME (0x00000400) Le système de fichiers prend en charge les opérations de suppression et de renommage de style POSIX.
FILE_VOLUME_IS_COMPRESSED (0x00008000) Le volume spécifié est un volume compressé. Cet indicateur n’est pas compatible avec l’indicateur FILE_FILE_COMPRESSION. Cela n’affecte pas la façon dont les données sont transférées sur le réseau.
FILE_SUPPORTS_OBJECT_IDS (0x00010000) Le système de fichiers prend en charge les identificateurs d’objet.
FILE_SUPPORTS_ENCRYPTION (0x00020000) Le système de fichiers prend en charge le chiffrement.
FILE_NAMED_STREAMS (0x00040000) Le système de fichiers prend en charge les flux de données nommés pour un fichier.
FILE_READ_ONLY_VOLUME (0x00080000) Le volume spécifié est en lecture seule.
FILE_SEQUENTIAL_WRITE_ONCE (0x00100000) Le volume spécifié ne peut être écrit qu’une seule fois. L’écriture doit être effectuée dans l’ordre séquentiel.
FILE_SUPPORTS_TRANSACTIONS (0x00200000) Le système de fichiers prend en charge de traitement des transactions.
FILE_SUPPORTS_HARD_LINKS (0x00400000) Le système de fichiers prend en charge les liens directs vers d’autres appareils et partitions.
FILE_SUPPORTS_EXTENDED_ATTRIBUTES (0x00800000) Le système de fichiers prend en charge les attributs étendus (AE).
FILE_SUPPORTS_OPEN_BY_FILE_ID (0x01000000) Le système de fichiers prend en charge l’ouverture par ID de fichier.
FILE_SUPPORTS_USN_JOURNAL (0x02000000) Le système de fichiers prend en charge les journaux USN (Update Sequence Number).
FILE_SUPPORTS_INTEGRITY_STREAMS (0x04000000) Le système de fichiers prend en charge les flux d’intégrité .
FILE_SUPPORTS_BLOCK_REFCOUNTING (0x08000000) Le système de fichiers prend en charge clonage de bloc, c’est-à-dire le partage de clusters logiques entre les fichiers sur le même volume. Le système de fichiers réalloue les écritures dans des clusters partagés.
FILE_SUPPORTS_SPARSE_VDL (0x10000000) Le système de fichiers suit si chaque cluster d’un fichier contient des données valides (à partir d’écritures de fichiers explicites ou de zéros automatiques) ou de données non valides (n’a pas encore été écrit dans ou zéro). Les systèmes de fichiers qui utilisent une longueur de données valides (VDL) ne stockent pas une longueur de données valide et ne nécessitent pas que les données valides soient contiguës dans un fichier.
FILE_DAX_VOLUME (0x20000000) Le volume spécifié est un volume d’accès direct (DAX).
FILE_SUPPORTS_GHOSTING (0x40000000) Le système de fichiers prend en charge le fantôme.

MaximumComponentNameLength

Longueur maximale du composant de nom de fichier prise en charge par le système de fichiers spécifié, en caractères. Un composant de nom de fichier est cette partie d’un nom de fichier entre les caractères séparateurs de chemin d’accès (tels que les barres obliques inverses).

FileSystemNameLength

Longueur, en octets, du nom du système de fichiers. La valeur de ce champ doit être supérieure à zéro.

FileSystemName[1]

Champ Unicode de longueur variable contenant le nom du système de fichiers. Ce champ n’est pas terminé par null et doit être géré sous la forme d’une séquence d'FileSystemNameLength octets.

Remarques

Ces informations peuvent être interrogées de l’une des manières suivantes :

Aucun droit d’accès spécifique n’est requis pour interroger ces informations. Ainsi, ces informations sont disponibles tant que le volume est accessible via un handle ouvert au volume lui-même, ou à un fichier ou répertoire sur le volume.

La taille de la mémoire tampon passée dans le paramètre FileInformation à FltQueryVolumeInformation ou ZwQueryVolumeInformationFile doit être au moins . Étant donné qu’une longueur maximale du nom du système de fichiers ne peut pas être supposée (pratiquement, la limite est de 2^31 points de caractères), un deuxième appel à l’une de ces routines sera nécessaire une fois FileSystemNameLength est connu.

Cette structure doit être alignée sur une limite LONG (4 octets).

Exigences

Exigence Valeur
d’en-tête ntifs.h (include Ntifs.h, Fltkernel.h)

Voir aussi

de liste de contrôle d’accès

FltQueryVolumeInformation

IRP_MJ_QUERY_VOLUME_INFORMATION

ZwQueryVolumeInformationFile