CreateSymbolicLinkW-Funktion (winbase.h)
Erstellt eine symbolische Verknüpfung.
Verwenden Sie die CreateSymbolicLinkTransacted--Funktion, um diesen Vorgang als transacted-Vorgang auszuführen.
Syntax
BOOLEAN CreateSymbolicLinkW(
[in] LPCWSTR lpSymlinkFileName,
[in] LPCWSTR lpTargetFileName,
[in] DWORD dwFlags
);
Parameter
[in] lpSymlinkFileName
Die zu erstellende symbolische Verknüpfung.
Dieser Parameter kann den Pfad enthalten.
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] lpTargetFileName
Der Name des Ziels für die zu erstellende symbolische Verknüpfung.
Wenn lpTargetFileName einem Gerätenamen zugeordnet ist, wird der Link als absoluter Link behandelt. andernfalls wird der Link als relative Verknüpfung behandelt.
Dieser Parameter kann den Pfad enthalten.
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] dwFlags
Gibt an, ob das Linkziel lpTargetFileNameein Verzeichnis ist.
Wert | Bedeutung |
---|---|
|
Das Linkziel ist eine Datei. |
|
Das Linkziel ist ein Verzeichnis. |
|
Geben Sie dieses Kennzeichen an, um die Erstellung symbolischer Verknüpfungen zuzulassen, wenn der Prozess nicht erhöht wird. Entwicklermodus muss zuerst auf dem Computer aktiviert werden, bevor diese Option funktioniert. |
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.
Bemerkungen
Symbolische Verknüpfungen können entweder absolute oder relative Verknüpfungen sein. Absolute Verknüpfungen sind Links, die jeden Teil des Pfadnamens angeben. Relative Verknüpfungen werden relativ dazu bestimmt, wo sich relative Verknüpfungsbezeichner in einem angegebenen Pfad befinden. Relative Links werden mithilfe der folgenden Konventionen angegeben:
- Dot(- und ..)-Konventionen , z. B. ".. \" löst den Pfad relativ zum übergeordneten Verzeichnis auf.
- Namen ohne Schrägstriche (\\), z. B. löst "tmp" den Pfad relativ zum aktuellen Verzeichnis auf.
- Stammrelativ – z. B. "\Windows\System32" wird in "aktuelles Laufwerk:\Windows\System32" aufgelöst.
- Aktuelles Arbeitsverzeichnis –relativ , z. B. wenn das aktuelle Arbeitsverzeichnis "C:\Windows\System32" lautet, wird "C:File.txt" in "C:\Windows\System32\File.txt" aufgelöst.
Hinweis Wenn Sie einen relativen Arbeitsverzeichnisverknüpfung angeben, wird sie aufgrund der Art und Weise erstellt, wie das aktuelle Arbeitsverzeichnis basierend auf dem Benutzer und dem Thread verarbeitet wird.
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) | Nein |
Freigegebenes Clustervolumedateisystem (CsvFS) | Nein |
Resilient File System (ReFS) | Ja |
CsvFs unterstützen keine Softlinks oder andere Analysepunkte.
Anmerkung
Der winbase.h-Header definiert CreateSymbolicLink 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 Vista [nur Desktop-Apps] |
mindestens unterstützte Server- | Windows Server 2008 [Nur Desktop-Apps] |
Zielplattform- | Fenster |
Header- | winbase.h (enthalten Windows.h) |
Library | Kernel32.lib |
DLL- | Kernel32.dll |