Fonction IdnToNameprepUnicode (winnls.h)
Convertit un nom de domaine internationalisé (IDN) ou une autre étiquette internationalisée au format NamePrep spécifié par le groupe de travail réseau RFC 3491, mais n’effectue pas la conversion supplémentaire en Punycode. Pour plus d’informations et des liens vers des projets de normes connexes, consultez Gestion des noms de domaine internationalisés (IDN).
Syntaxe
int IdnToNameprepUnicode(
[in] DWORD dwFlags,
[in] LPCWSTR lpUnicodeCharStr,
[in] int cchUnicodeChar,
[out, optional] LPWSTR lpNameprepCharStr,
[in] int cchNameprepChar
);
Paramètres
[in] dwFlags
Indicateurs spécifiant les options de conversion. Pour obtenir des définitions détaillées, consultez le paramètre dwFlagsd’IdnToAscii.
[in] lpUnicodeCharStr
Pointeur vers une chaîne Unicode représentant un IDN ou une autre étiquette internationalisée.
[in] cchUnicodeChar
Nombre de caractères Unicode dans la chaîne Unicode d’entrée indiquée par lpUnicodeCharStr.
[out, optional] lpNameprepCharStr
Pointeur vers une mémoire tampon qui reçoit une version de la chaîne Unicode d’entrée convertie via le traitement NamePrep. La fonction peut également récupérer null pour ce paramètre, si cchNameprepChar a la valeur 0. Dans ce cas, la fonction retourne la taille requise pour cette mémoire tampon.
[in] cchNameprepChar
Taille, en caractères, de la mémoire tampon indiquée par lpNameprepCharStr. L’application peut définir la taille sur 0 pour récupérer NULL dans lpNameprepCharStr et faire en effet que la fonction retourne la taille de mémoire tampon requise.
Valeur retournée
Retourne le nombre de caractères récupérés dans lpNameprepCharStr en cas de réussite. La chaîne récupérée est terminée par null uniquement si la chaîne Unicode d’entrée est terminée par null.
Si la fonction réussit et que la valeur de cchNameprepChar est 0, la fonction retourne la taille requise, en caractères incluant un caractère null de fin s’il faisait partie de la mémoire tampon d’entrée.
La fonction retourne 0 si elle ne réussit pas. Pour obtenir des informations d’erreur étendues, l’application peut appeler GetLastError, qui peut retourner l’un des codes d’erreur suivants :
- ERROR_INSUFFICIENT_BUFFER. Une taille de mémoire tampon fournie n’était pas assez grande ou elle a été incorrectement définie sur NULL.
- ERROR_INVALID_FLAGS. Les valeurs fournies pour les indicateurs n’étaient pas valides.
- ERROR_INVALID_NAME. Un nom non valide a été fourni à la fonction. Notez que ce code d’erreur intercepte toutes les erreurs de syntaxe.
- ERROR_INVALID_PARAMETER. L’une des valeurs de paramètre n’était pas valide.
- ERROR_NO_UNICODE_TRANSLATION. Unicode non valide a été trouvé dans une chaîne.
Remarques
Consultez Remarques relatives à IdnToAscii.
Exemples
NLS : Exemple de conversion de nom de domaine international (IDN) illustre l’utilisation de cette fonction.
Configuration requise
Client minimal pris en charge | Windows Vista [applications de bureau | applications UWP] |
Serveur minimal pris en charge | Windows Server 2008 [applications de bureau | applications UWP] |
Plateforme cible | Windows |
En-tête | winnls.h (inclure Windows.h) |
Bibliothèque | Normaliz.lib |
DLL | Normaliz.dll |
Composant redistribuable | API d’atténuation des noms de domaine internationalisés (IDN) Microsoft surWindows XP avec SP2 et versions ultérieures, ouWindows Server 2003 avec SP1 |
Voir aussi
Gestion des noms de domaine internationalisés (IDN)