Condividi tramite


Funzione GetFileAttributesExA (fileapi.h)

Recupera gli attributi per un file o una directory specificati.

Per eseguire questa operazione come operazione transazionata, usare la funzione GetFileAttributesTransacted .

Sintassi

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

Parametri

[in] lpFileName

Nome del file o della directory.

Per impostazione predefinita, il nome è limitato a MAX_PATH caratteri. Per estendere questo limite a 32.767 caratteri wide, prependo "\\?\" al percorso. Per altre informazioni, vedere Denominazione di file, percorsi e spazi dei nomi.

Suggerimento

A partire da Windows 10, versione 1607, è possibile scegliere di rimuovere la limitazione MAX_PATH senza pre sospeso "\\?\". Per informazioni dettagliate, vedere la sezione "Limitazione massima lunghezza percorso" di nomi, nomi, percorsi e spazi dei nomi .

[in] fInfoLevelId

Classe di informazioni sull'attributo da recuperare.

Questo parametro può essere il valore seguente dall'enumerazione GET_FILEEX_INFO_LEVELS .

Valore Significato
GetFileExInfoStandard
Il parametro lpFileInformation è una struttura WIN32_FILE_ATTRIBUTE_DATA .

[out] lpFileInformation

Puntatore a un buffer che riceve le informazioni sull'attributo.

Il tipo di informazioni sull'attributo archiviate in questo buffer è determinato dal valore fInfoLevelId.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è un valore diverso da zero.

Se la funzione ha esito negativo, il valore restituito è zero (0). Per informazioni dettagliate sull'errore, chiamare GetLastError.

Commenti

La funzione GetFileAttributes recupera le informazioni sull'attributo file system. GetFileAttributesEx può ottenere altre informazioni sull'attributo file o directory. Attualmente GetFileAttributesEx recupera un set di attributi standard che è un superset delle informazioni sull'attributo del file system.

Quando la funzione GetFileAttributesEx viene chiamata in una directory che è una cartella montata, restituisce gli attributi della directory, non quelli della directory radice nel volume associato alla directory montata. Per ottenere gli attributi del volume associato, chiamare GetVolumeNameForVolumeMountPoint per ottenere il nome del volume associato. Usare quindi il nome risultante in una chiamata a GetFileAttributesEx. I risultati sono gli attributi della directory radice nel volume associato.

In Windows 8 e Windows Server 2012 questa funzione è supportata dalle tecnologie seguenti.

Tecnologia Supportato
Protocollo SMB (Server Message Block) 3.0
Failover trasparente SMB 3.0 (TFO)
SMB 3.0 con condivisioni file con scalabilità orizzontale (SO)
File system del volume condiviso del cluster (CsvFS)
File system resiliente (ReFS)
 

Comportamento di collegamento simbolico: se il percorso punta a un collegamento simbolico, la funzione restituisce attributi per il collegamento simbolico.

Operazioni transazionate

Se un file è aperto per la modifica in una transazione, nessun altro thread può aprire il file per la modifica fino al commit della transazione. Quindi, se un thread transazionato apre prima il file, tutti i thread successivi che tentano di modificare il file prima che la transazione venga eseguito il commit riceva una violazione di condivisione. Se un thread non transazionale modifica il file prima che il thread transazionato venga eseguito e il file sia ancora aperto quando la transazione tenta di aprirla, la transazione riceve l'errore ERROR_TRANSACTIONAL_CONFLICT.

Nota

L'intestazione fileapi.h definisce GetFileAttributesEx come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante preprocessore UNICODE. La combinazione dell'utilizzo dell'alias di codifica neutrale con il codice che non è neutrale dalla codifica può causare errori di corrispondenza che causano errori di compilazione o runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzione.

Requisiti

   
Client minimo supportato Windows XP [app desktop | App UWP]
Server minimo supportato Windows Server 2003 [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione fileapi.h (includere Windows.h)
Libreria Kernel32.lib
DLL Kernel32.dll

Vedere anche

Costanti dell'attributo file

Funzioni di gestione file

GetFileAttributes

GetFileAttributesTransacted

SetFileAttributes

Collegamenti simbolici