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 Zeichenfolge mit NULL-Beendigung, 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 NULL-endende 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-End-Pfad und dateinamen für die Verknüpfung empfängt. Es wird davon ausgegangen, dass dieser Puffer mindestens MAX_PATH Zeichen groß ist.

[out] pfMustCopy

Typ: BOOL*

Die Adresse eines BOOL-Werts , der ein Flag empfängt, das angibt, ob die Verknüpfung kopiert wird. Wenn eine Verknüpfung zu 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 wird.

[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 Flag nicht enthalten ist, wird pszLinkTo als Adresse einer Zeichenfolge betrachtet, die den Pfad und Dateinamen des Ziels enthält.

SHGNLI_NOUNIQUE (0x000000002)

0x000000002. Überspringen Sie die normalen Überprüfungen, die sicherstellen, 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 im Zielordner bereits eine Datei mit demselben Namen 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 "Shortcut to " vorangestellt.

SHGNLI_NOLNK (0x000000008)

0x000000008. Version 5.0 Fügen Sie die .lnk Dateinamenerweiterung nicht hinzu. Sie müssen das _WIN32_IE Makro auf 5.01 oder höher festlegen, um dieses Flag verwenden zu können. Weitere Informationen zur Versionsverwaltung finden Sie unter Versionen von Shell und allgemeinen Steuerelementen.

SHGNLI_NOLOCNAME (0x000000010)

0x000000010. Windows Vista und höher. Verwenden Sie den nicht lokalisierten Analysenamen des Ziels, auf das pszLinkTo verweist, als Namen der Verknüpfungsdatei. 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 pszName verweist. 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 war. andernfalls FALSE.

Hinweise

SHGetNewLinkInfo bestimmt, ob das Zieldateisystem lange Dateinamen unterstützt. Wenn dies der Fall ist, wird für den Verknüpfungsnamen ein langer Dateiname verwendet. Wenn das Zieldateisystem keine langen Dateinamen unterstützt, wird der Verknüpfungsname im Format 8.3 zurückgegeben.

Hinweis

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
Unterstützte Mindestversion (Client) Windows 2000 Professional, Windows XP, Windows 7 [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile shellapi.h
Bibliothek Shell32.lib
DLL Shell32.dll (Version 4.71 oder höher)