GetFileAttributesExA-Funktion (fileapi.h)
Ruft Attribute für eine angegebene Datei oder ein angegebenes Verzeichnis ab.
Um diesen Vorgang als transacted-Vorgang auszuführen, verwenden Sie die GetFileAttributesTransacted--Funktion.
Syntax
BOOL GetFileAttributesExA(
[in] LPCSTR lpFileName,
[in] GET_FILEEX_INFO_LEVELS fInfoLevelId,
[out] LPVOID lpFileInformation
);
Parameter
[in] lpFileName
Der Name der Datei oder des Verzeichnisses.
Standardmäßig ist der Name auf MAX_PATH Zeichen beschränkt. Um diesen Grenzwert auf 32.767 breite Zeichen zu erweitern, stellen Sie "\\?\" dem Pfad voran. Weitere Informationen finden Sie unter Namensdateien, Pfade und Namespaces.
Trinkgeld
Ab Windows 10, Version 1607, können Sie sich anmelden, um die MAX_PATH Einschränkung zu entfernen, ohne "\\?\". Weitere Informationen finden Sie im Abschnitt "Maximale Pfadlängenbeschränkung" Benennungsdateien, Pfade und Namespaces.
[in] fInfoLevelId
Eine Klasse von Attributinformationen, die abgerufen werden sollen.
Dieser Parameter kann der folgende Wert aus der GET_FILEEX_INFO_LEVELS Enumeration sein.
Wert | Bedeutung |
---|---|
|
Der parameter lpFileInformation ist eine WIN32_FILE_ATTRIBUTE_DATA Struktur. |
[out] lpFileInformation
Ein Zeiger auf einen Puffer, der die Attributinformationen empfängt.
Der Typ der In diesem Puffer gespeicherten Attributinformationen wird durch den Wert fInfoLevelIdbestimmt.
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert ein Wert ungleich Null.
Wenn die Funktion fehlschlägt, ist der Rückgabewert null (0). Rufen Sie GetLastErrorauf, um erweiterte Fehlerinformationen zu erhalten.
Bemerkungen
Die GetFileAttributes- Funktion ruft Dateisystemattributinformationen ab. GetFileAttributesEx- können andere Datei- oder Verzeichnisattributinformationen abrufen. Derzeit ruft GetFileAttributesEx eine Reihe von Standardattributen ab, die eine Obermenge der Dateisystemattributinformationen sind.
Wenn die GetFileAttributesEx--Funktion für ein Verzeichnis aufgerufen wird, das ein bereitgestellter Ordner ist, werden die Attribute des Verzeichnisses und nicht die Attribute des Stammverzeichnisses im Volume zurückgegeben, dem der bereitgestellte Ordner dem Verzeichnis zugeordnet ist. Rufen Sie zum Abrufen der Attribute des zugeordneten Volumes GetVolumeNameForVolumeMountPoint- auf, um den Namen des zugeordneten Volumes abzurufen. Verwenden Sie dann den resultierenden Namen in einem Aufruf von GetFileAttributesEx. Die Ergebnisse sind die Attribute des Stammverzeichnisses auf dem zugeordneten Volume.
In Windows 8 und Windows Server 2012 wird diese Funktion von den folgenden Technologien unterstützt.
Technologie | Abgestützt |
---|---|
Server Message Block (SMB) 3.0-Protokoll | Ja |
SMB 3.0 Transparent Failover (TFO) | Ja |
SMB 3.0 mit Skalierungsdateifreigaben (SO) | Ja |
Freigegebenes Clustervolumedateisystem (CsvFS) | Ja |
Resilient File System (ReFS) | Ja |
Verhalten symbolischer Verknüpfungen – Wenn der Pfad auf eine symbolische Verknüpfung zeigt, gibt die Funktion Attribute für die symbolische Verknüpfung zurück.
Transacted Operations
Wenn eine Datei zur Änderung in einer Transaktion geöffnet ist, kann kein anderer Thread die Datei zur Änderung öffnen, bis die Transaktion zugesichert wurde. Wenn also ein transacted Thread die Datei zuerst öffnet, erhalten alle nachfolgenden Threads, die versuchen, die Datei zu ändern, bevor die Transaktion zugesichert wird, eine Freigabeverletzung. Wenn ein Nicht-Transact-Thread die Datei vor dem Transaktionsthread ändert und die Datei weiterhin geöffnet ist, wenn die Transaktion versucht, sie zu öffnen, erhält die Transaktion den Fehler ERROR_TRANSACTIONAL_CONFLICT.Anmerkung
Der Fileapi.h-Header definiert GetFileAttributesEx als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows XP [Desktop-Apps | UWP-Apps] |
mindestens unterstützte Server- | Windows Server 2003 [Desktop-Apps | UWP-Apps] |
Zielplattform- | Fenster |
Header- | fileapi.h (include Windows.h) |
Library | Kernel32.lib |
DLL- | Kernel32.dll |