Freigeben über


SetFileShortNameA-Funktion (winbase.h)

Legt den Kurznamen für die angegebene Datei fest. Die Datei muss sich auf einem NTFS-Dateisystemvolume befinden.

Syntax

BOOL SetFileShortNameA(
  [in] HANDLE hFile,
  [in] LPCSTR lpShortName
);

Parameter

[in] hFile

Ein Handle für die Datei. Die Datei muss entweder mit dem GENERIC_ALL Zugriffsrecht oder GENERIC_WRITE|DELETE-und mit dem FILE_FLAG_BACKUP_SEMANTICS Datei-Attribut geöffnet werden.

[in] lpShortName

Ein Zeiger auf eine Zeichenfolge, die den Kurznamen für die Datei angibt.

Wenn Sie eine leere Zeichenfolge (leere Zeichenfolge) angeben, wird der kurze Dateiname entfernt, sofern sie für die durch den hFile Parameter angegebene Datei vorhanden ist. Wenn kein kurzer Dateiname vorhanden ist, führt die Funktion nichts aus und gibt Erfolg zurück.

Windows Server 2008, Windows Vista, Windows Server 2003 und Windows XP: Dieses Verhalten wird nicht unterstützt. Der Parameter muss eine gültige Zeichenfolge mit mindestens einem Zeichen enthalten.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich Null.

Wenn die Funktion fehlschlägt, ist der Rückgabewert null. Rufen Sie GetLastErrorauf, um erweiterte Fehlerinformationen zu erhalten. GetLastError- kann einen der folgenden Fehlercodes zurückgeben, die für diese Funktion spezifisch sind.

Rückgabecode Beschreibung
ERROR_ALREADY_EXISTS
Der angegebene Kurzname ist nicht eindeutig.
ERROR_INVALID_PARAMETER
Entweder wurde die angegebene Datei im Modus mit Groß-/Kleinschreibung geöffnet, oder der angegebene Kurzname ist ungültig.

Bemerkungen

Der Aufrufer dieser Funktion muss über die SE_RESTORE_NAME Berechtigung verfügen. Weitere Informationen finden Sie unter Ausführen mit speziellen Rechten.

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) Nein
SMB 3.0 mit Skalierungsdateifreigaben (SO) Nein
Freigegebenes Clustervolumedateisystem (CsvFS) Ja
Resilient File System (ReFS) Nein
 

SMB 3.0 unterstützt keine Kurznamen für Freigaben mit fortlaufender Verfügbarkeitsfunktion. Kurznamen werden in CSVFs nicht empfohlen.

Anmerkung

Der winbase.h-Header definiert SetFileShortName 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 [nur Desktop-Apps]
mindestens unterstützte Server- Windows Server 2003 [Nur Desktop-Apps]
Zielplattform- Fenster
Header- winbase.h (enthalten Windows.h)
Library Kernel32.lib
DLL- Kernel32.dll

Siehe auch

Dateiverwaltungsfunktionen

GetShortPathName-