UrlUnescapeA, fonction (shlwapi.h)
Convertit les séquences d’échappement en caractères ordinaires.
Syntaxe
LWSTDAPI UrlUnescapeA(
[in, out] PSTR pszUrl,
[out, optional] PSTR pszUnescaped,
[in, out, optional] DWORD *pcchUnescaped,
DWORD dwFlags
);
Paramètres
[in, out] pszUrl
Type : PTSTR
Pointeur vers une chaîne terminée par null avec l’URL. Si dwFlags est défini sur URL_UNESCAPE_INPLACE, la chaîne convertie est retournée via ce paramètre.
[out, optional] pszUnescaped
Type : PTSTR
Pointeur vers une mémoire tampon qui recevra une chaîne terminée par null qui contient la version sans séquence d’échappement de pszURL. Si URL_UNESCAPE_INPLACE est défini dans dwFlags, ce paramètre est ignoré.
[in, out, optional] pcchUnescaped
Type : DWORD*
Nombre de caractères dans la mémoire tampon vers laquelle pszUnescaped pointe. Lors de l’entrée, la valeur pcchUnescaped pointe vers est définie sur la taille de la mémoire tampon. Si la fonction retourne un code de réussite et que l’indicateur de URL_UNESCAPE_INPLACE n’est pas défini, la valeur vers laquelle pointe pcchUnescaped est définie sur le nombre de caractères écrits dans cette mémoire tampon, sans compter le caractère NULL de fin. Si un code d’erreur E_POINTER est retourné, la mémoire tampon était trop petite et la valeur à laquelle les points pcchUnescaped sont définis sur le nombre requis de caractères que la mémoire tampon doit être en mesure de contenir. Si d’autres erreurs sont retournées, la valeur à laquelle pcchUnescaped pointe n’est pas définie.
dwFlags
Type : DWORD
Indicateurs qui contrôlent les caractères non échiffés. Il peut s’agir d’une combinaison des indicateurs suivants.
URL_DONT_UNESCAPE_EXTRA_INFO
Ne pas convertir le nombre ou ? ou tout caractère qui les suit dans la chaîne.
URL_UNESCAPE_AS_UTF8
Introduit dans Windows 8. Décodez les URL qui ont été encodées à l’aide de l’indicateur URL_ESCAPE_AS_UTF8 .
URL_UNESCAPE_INPLACE
Utilisez pszURL pour renvoyer la chaîne convertie au lieu de pszUnescaped.
Valeur retournée
Type : HRESULT
Retourne S_OK en cas de réussite. Si l’indicateur URL_UNESCAPE_INPLACE n’est pas défini, la valeur pointée par pcchUnescaped est définie sur le nombre de caractères dans la mémoire tampon de sortie pointée par pszUnescaped. Retourne E_POINTER si l’indicateur URL_UNESCAPE_INPLACE n’est pas défini et que la mémoire tampon de sortie est trop petite. Le paramètre pcchUnescaped est défini sur la taille de mémoire tampon requise. Sinon, retourne une valeur d’erreur standard.
Remarques
Une séquence d’échappement a la forme « %xy ».
Les chaînes d’entrée ne peuvent pas dépasser INTERNET_MAX_URL_LENGTH.
Notes
L’en-tête shlwapi.h définit UrlUnescape comme un 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. La combinaison 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.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 2000 Professionnel, Windows XP [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | shlwapi.h |
Bibliothèque | Shlwapi.lib |
DLL | Shlwapi.dll (version 5.0 ou ultérieure) |