Partager via


GetFileAttributesExA, fonction (fileapi.h)

Récupère les attributs d’un fichier ou d’un répertoire spécifié.

Pour effectuer cette opération en tant qu’opération transactionnelle, utilisez la fonction GetFileAttributesTransacted .

Syntaxe

BOOL GetFileAttributesExA(
  [in]  LPCSTR                 lpFileName,
  [in]  GET_FILEEX_INFO_LEVELS fInfoLevelId,
  [out] LPVOID                 lpFileInformation
);

Paramètres

[in] lpFileName

Nom du fichier ou du répertoire.

Par défaut, le nom est limité à MAX_PATH caractères. Pour étendre cette limite à 32 767 caractères de large, ajoutez « \\?\ » au chemin d’accès. Pour plus d’informations, consultez Nommage de fichiers, de chemins et d’espaces de noms.

Conseil

À compter de Windows 10, version 1607, vous pouvez choisir de supprimer la limitation de MAX_PATH sans précédencer « \?\ ». Pour plus d’informations, consultez la section « Limitation de longueur maximale du chemin d’accès » dans Naming Files, Paths et Namespaces .

[in] fInfoLevelId

Classe d’informations d’attribut à récupérer.

Ce paramètre peut être la valeur suivante de l’énumération GET_FILEEX_INFO_LEVELS .

Valeur Signification
GetFileExInfoStandard
Le paramètre lpFileInformation est une structure WIN32_FILE_ATTRIBUTE_DATA .

[out] lpFileInformation

Pointeur vers une mémoire tampon qui reçoit les informations d’attribut.

Le type d’informations d’attribut stockées dans cette mémoire tampon est déterminé par la valeur de fInfoLevelId.

Valeur retournée

Si la fonction réussit, la valeur de retour est une valeur différente de zéro.

Si la fonction échoue, la valeur de retour est zéro (0). Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError.

Notes

La fonction GetFileAttributes récupère les informations d’attribut du système de fichiers. GetFileAttributesEx peut obtenir d’autres ensembles d’informations d’attribut de fichier ou de répertoire. Actuellement, GetFileAttributesEx récupère un ensemble d’attributs standard qui est un sur-ensemble d’informations sur les attributs du système de fichiers.

Lorsque la fonction GetFileAttributesEx est appelée sur un répertoire qui est un dossier monté, elle retourne les attributs du répertoire, et non ceux du répertoire racine dans le volume que le dossier monté associe au répertoire. Pour obtenir les attributs du volume associé, appelez GetVolumeNameForVolumeMountPoint pour obtenir le nom du volume associé. Utilisez ensuite le nom résultant dans un appel à GetFileAttributesEx. Les résultats sont les attributs du répertoire racine sur le volume associé.

Dans Windows 8 et Windows Server 2012, cette fonction est prise en charge par les technologies suivantes.

Technologie Prise en charge
Protocole SMB (Server Message Block) 3.0 Oui
Basculement transparent SMB 3.0 (TFO) Oui
SMB 3.0 avec partages de fichiers avec montée en puissance sortante (SO) Oui
Cluster Shared Volume File System (CsvFS) Oui
Système de fichiers résilient (ReFS) Oui
 

Comportement de lien symbolique : si le chemin pointe vers un lien symbolique, la fonction retourne des attributs pour le lien symbolique.

Opérations traitées

Si un fichier est ouvert pour modification dans une transaction, aucun autre thread ne peut ouvrir le fichier pour modification tant que la transaction n’est pas validée. Par conséquent, si un thread traité ouvre le fichier en premier, tous les threads suivants qui tentent de modifier le fichier avant la validation de la transaction reçoivent une violation de partage. Si un thread non traité modifie le fichier avant le thread traité et que le fichier est toujours ouvert lorsque la transaction tente de l’ouvrir, la transaction reçoit l’erreur ERROR_TRANSACTIONAL_CONFLICT.

Notes

L’en-tête fileapi.h définit GetFileAttributesEx comme alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. La combinaison de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Configuration requise

   
Client minimal pris en charge Windows XP [applications de bureau | Applications UWP]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau | Applications UWP]
Plateforme cible Windows
En-tête fileapi.h (inclure Windows.h)
Bibliothèque Kernel32.lib
DLL Kernel32.dll

Voir aussi

Constantes d’attribut de fichier

Fonctions de gestion de fichiers

GetFileAttributes

GetFileAttributesTransacted

SetFileAttributes

Liens symboliques