SHGetNewLinkInfoA, fonction (shellapi.h)
Crée un nom pour un nouveau raccourci en fonction de la cible proposée du raccourci. Cette fonction ne crée pas le raccourci, juste le nom.
Syntaxe
BOOL SHGetNewLinkInfoA(
[in] LPCSTR pszLinkTo,
[in] LPCSTR pszDir,
[out] LPSTR pszName,
[out] BOOL *pfMustCopy,
[in] UINT uFlags
);
Paramètres
[in] pszLinkTo
Type : LPCTSTR
Pointeur vers le chemin d’accès et le nom de fichier de la cible du raccourci. Si uFlags ne contient pas la valeur SHGNLI_PIDL, ce paramètre est l’adresse d’une chaîne terminée par null qui contient la cible. Si uFlags contient la valeur SHGNLI_PIDL, ce paramètre est un PIDL qui représente la cible.
[in] pszDir
Type : LPCTSTR
Pointeur vers une chaîne terminée par null qui contient le chemin d’accès du dossier dans lequel le raccourci serait créé.
[out] pszName
Type : LPTSTR
Pointeur vers une chaîne qui reçoit le chemin d’accès arrêté par null et le nom de fichier pour le raccourci. Cette mémoire tampon est supposée être au moins MAX_PATH caractères de taille.
[out] pfMustCopy
Type : BOOL*
Adresse d’un valeur boOL qui reçoit un indicateur indiquant si le raccourci serait copié. Lorsqu’un raccourci vers un autre raccourci est créé, l’interpréteur de commandes copie simplement le raccourci cible et modifie ce raccourci correctement copié. Ce paramètre reçoit une valeur différente de zéro si la cible spécifiée dans pszLinkTo spécifie un raccourci qui entraîne la copie du raccourci cible. Ce paramètre reçoit zéro si la cible ne spécifie pas de raccourci qui serait copié.
[in] uFlags
Type : uiNT
Options de la fonction. Il peut s’agir de zéro ou d’une combinaison des valeurs suivantes.
SHGNLI_PIDL (0x000000001)
0x000000001. La cible pointée par pszLinkTo est une adresse PIDL qui représente la cible. Si cet indicateur n’est pas inclus, pszLinkTo est considéré comme l’adresse d’une chaîne qui contient le chemin d’accès et le nom de fichier de la cible.
SHGNLI_NOUNIQUE (0x000000002)
0x000000002. Ignorez les vérifications normales qui garantissent que le nom du raccourci est unique dans le dossier de destination. Si cet indicateur n’est pas inclus, la fonction crée le nom du raccourci, puis détermine si le nom est unique dans le dossier de destination. Si un fichier portant le même nom existe déjà dans le dossier de destination, le nom du raccourci sera modifié. Ce processus est répété jusqu’à ce qu’un nom unique soit trouvé.
SHGNLI_PREFIXNAME (0x000000004)
0x000000004. Le nom créé sera précédé de la chaîne « Raccourci vers ».
SHGNLI_NOLNK (0x000000008)
0x000000008. version 5.0 N’ajoutez pas l’extension de nom de fichier .lnk. Vous devez définir la macro _WIN32_IE sur 5.01 ou une version ultérieure pour utiliser cet indicateur. Pour plus d’informations sur le contrôle de version, consultez Shell et Common Controls Versions.
SHGNLI_NOLOCNAME (0x000000010)
0x000000010. Windows Vista et versions ultérieures. Utilisez le nom d’analyse non localisé de la cible pointée par pszLinkTo comme nom du fichier de raccourci. Si cet indicateur n’est pas défini, le nom localisé est utilisé.
SHGNLI_USEURLEXT (0x000000020)
0x000000020. Windows 7 et versions ultérieures. Ajoutez une extension de nom de fichier .url (plutôt que .lnk) au nom pointé par pszName. Si cet indicateur n’est pas défini, le nom du raccourci utilise une extension .lnk, sauf si SHGNLI_NOLNK est définie.
Valeur de retour
Type : BOOL
Retourne TRUE en cas de réussite ; sinon, FALSE.
Remarques
SHGetNewLinkInfo détermine si le système de fichiers de destination prend en charge les noms de fichiers longs. Si c’est le cas, un nom de fichier long est utilisé pour le nom de raccourci. Si le système de fichiers de destination ne prend pas en charge les noms de fichiers longs, le nom de raccourci est retourné dans un format 8.3.
Note
L’en-tête shellapi.h définit SHGetNewLinkInfo comme alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows 2000 Professionnel, Windows XP, Windows 7 [applications de bureau uniquement] |
serveur minimum pris en charge | Windows 2000 Server [applications de bureau uniquement] |
plateforme cible | Windows |
d’en-tête | shellapi.h |
bibliothèque | Shell32.lib |
DLL | Shell32.dll (version 4.71 ou ultérieure) |