SHGetNewLinkInfoW-Funktion (shellapi.h)
Erstellt einen Namen für eine neue Verknüpfung basierend auf dem vorgeschlagenen Ziel der Verknüpfung. Diese Funktion erstellt nicht die Verknüpfung, nur den Namen.
Syntax
BOOL SHGetNewLinkInfoW(
[in] LPCWSTR pszLinkTo,
[in] LPCWSTR pszDir,
[out] LPWSTR pszName,
[out] BOOL *pfMustCopy,
[in] UINT uFlags
);
Parameter
[in] pszLinkTo
Typ: LPCTSTR-
Ein Zeiger auf den Pfad und dateinamen des Ziels der Verknüpfung. Wenn uFlags- nicht den SHGNLI_PIDL-Wert enthält, ist dieser Parameter die Adresse einer mit Null beendeten Zeichenfolge, die das Ziel enthält. Wenn uFlags- den SHGNLI_PIDL Wert enthält, ist dieser Parameter eine PIDL, die das Ziel darstellt.
[in] pszDir
Typ: LPCTSTR-
Ein Zeiger auf eine mit Null beendete Zeichenfolge, die den Pfad des Ordners enthält, in dem die Verknüpfung erstellt wird.
[out] pszName
Typ: LPTSTR-
Ein Zeiger auf eine Zeichenfolge, die den null-beendeten Pfad und Dateinamen für die Verknüpfung empfängt. Dieser Puffer wird davon ausgegangen, dass er mindestens MAX_PATH Zeichen in der Größe hat.
[out] pfMustCopy
Typ: BOOL*
Die Adresse eines BOOL--Werts, der ein Flag empfängt, das angibt, ob die Verknüpfung kopiert werden soll. Wenn eine Verknüpfung mit einer anderen Verknüpfung erstellt wird, kopiert die Shell einfach die Zielverknüpfung und ändert die kopierte Verknüpfung entsprechend. Dieser Parameter empfängt einen Wert ungleich Null, wenn das in pszLinkTo angegebene Ziel eine Verknüpfung angibt, die dazu führt, dass die Zielverknüpfung kopiert wird. Dieser Parameter empfängt null, wenn das Ziel keine Verknüpfung angibt, die kopiert werden würde.
[in] uFlags
Typ: UINT-
Die Optionen für die Funktion. Dies kann null oder eine Kombination der folgenden Werte sein.
SHGNLI_PIDL (0x000000001)
0x000000001. Das Ziel, auf das pszLinkTo verweist, ist eine PIDL, die das Ziel darstellt. Wenn dieses Kennzeichen nicht enthalten ist, wird pszLinkTo als Adresse einer Zeichenfolge angesehen, die den Pfad und Dateinamen des Ziels enthält.
SHGNLI_NOUNIQUE (0x000000002)
0x000000002. Überspringen Sie die normalen Überprüfungen, um sicherzustellen, dass der Verknüpfungsname innerhalb des Zielordners eindeutig ist. Wenn dieses Flag nicht enthalten ist, erstellt die Funktion den Verknüpfungsnamen und bestimmt dann, ob der Name im Zielordner eindeutig ist. Wenn eine Datei mit demselben Namen bereits im Zielordner vorhanden ist, wird der Verknüpfungsname geändert. Dieser Vorgang wird wiederholt, bis ein eindeutiger Name gefunden wird.
SHGNLI_PREFIXNAME (0x000000004)
0x000000004. Dem erstellten Namen wird die Zeichenfolge "Verknüpfung mit" vorangestellt.
SHGNLI_NOLNK (0x000000008)
0x000000008. Version 5.0 Fügen Sie die Dateinamenerweiterung .lnk nicht hinzu. Sie müssen das _WIN32_IE Makro auf 5.01 oder höher festlegen, um dieses Flag zu verwenden. Weitere Informationen zur Versionsverwaltung finden Sie unter Shell- und allgemeine Steuerelementversionen.
SHGNLI_NOLOCNAME (0x000000010)
0x000000010. Windows Vista und höher. Verwenden Sie den nicht lokalisierten Analysenamen des Ziels, auf das durch pszLinkTo als Name der Verknüpfungsdatei verwiesen wird. Wenn dieses Flag nicht festgelegt ist, wird der lokalisierte Name verwendet.
SHGNLI_USEURLEXT (0x000000020)
0x000000020. Windows 7 und höher. Fügen Sie eine URL-Dateinamenerweiterung (anstelle von .lnk) an den Namen an, auf den pszNameverweist. Wenn dieses Flag nicht festgelegt ist, verwendet der Verknüpfungsname eine .lnk Erweiterung, es sei denn, SHGNLI_NOLNK festgelegt ist.
Rückgabewert
Typ: BOOL-
Gibt TRUE- zurück, wenn dies erfolgreich ist; andernfalls FALSE.
Bemerkungen
SHGetNewLinkInfo bestimmt, ob das Zieldateisystem lange Dateinamen unterstützt. Wenn dies der Fall ist, wird ein langer Dateiname für den Verknüpfungsnamen verwendet. Wenn das Zieldateisystem keine langen Dateinamen unterstützt, wird der Verknüpfungsname in einem 8.3-Format zurückgegeben.
Anmerkung
Der shellapi.h-Header definiert SHGetNewLinkInfo 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 2000 Professional, Windows XP, Windows 7 [nur Desktop-Apps] |
mindestens unterstützte Server- | Windows 2000 Server [nur Desktop-Apps] |
Zielplattform- | Fenster |
Header- | shellapi.h |
Library | Shell32.lib |
DLL- | Shell32.dll (Version 4.71 oder höher) |