DownlevelGetLocaleScripts fonction)

Fournit une liste de scripts pour les paramètres régionaux spécifiés.

Notes

cette fonction est utilisée uniquement par les applications qui s’exécutent sur des systèmes d’exploitation antérieurs à Windows Vista. Son utilisation requiert le package de téléchargement. les Applications qui s’exécutent uniquement sur Windows Vista et versions ultérieures doivent appeler GetLocaleInfo avec LCType défini sur locale _ SSCRIPTS.

Syntaxe

int DownlevelGetLocaleScripts(
  _In_  LPCWSTR lpLocaleName,
  _Out_ LPWSTR  lpScripts,
  _In_  int     cchScripts
);

Paramètres

lpLocaleName [ dans]

Pointeur vers un nom de paramètres régionauxse terminant par null.

lpScripts [ à]

Pointeur vers une mémoire tampon dans laquelle cette fonction récupère une chaîne se terminant par un caractère null qui représente une liste de scripts, à l’aide de la notation à 4 caractères utilisée dans ISO 15924. Chaque nom de script se compose de quatre caractères latins, et les noms sont récupérés dans l’ordre alphabétique. Chacune d’entre elles, y compris la dernière, est suivie d’un point-virgule.

Ce paramètre peut également contenir la valeur null si cchScripts a la valeur 0. Dans ce cas, la fonction retourne la taille requise pour la mémoire tampon de script.

cchScripts [ dans]

Taille, en caractères, de la mémoire tampon de script indiquée par lpScripts.

L’application peut également affecter la valeur 0 à ce paramètre. Dans ce cas, la fonction récupère la valeur null dans lpScripts et retourne la taille requise pour la mémoire tampon de script.

Valeur retournée

Retourne le nombre de caractères récupérés dans la mémoire tampon de script, y compris le caractère null de fin. Si la fonction est réussie et que la valeur de cchScripts est 0, la valeur de retour est la taille requise, en caractères incluant un caractère null de fin, pour la mémoire tampon de script.

Cette fonction retourne 0 si elle ne fonctionne pas. Pour obtenir des informations d’erreur étendues, l’application peut appeler GetLastError, qui peut retourner l’un des codes d’erreur suivants :

  • ERREUR _ BADDB. La fonction n’a pas pu accéder aux données. Cette situation ne doit normalement pas se produire, et indique généralement une installation incorrecte, un problème de disque ou similaire.
  • ERREUR _ de _ mémoire tampon insuffisante. La taille de la mémoire tampon fournie n’est pas assez grande ou n’a pas été correctement définie sur null.
  • ERREUR _ _ : paramètre non valide. Les valeurs de paramètre ne sont pas valides.

Remarques

Cette fonction est utile dans le cadre d’une stratégie visant à atténuer les problèmes de sécurité liés aux noms de domaine internationaux (IDNs).

Voici quelques exemples d’entrées et de sorties pour cette fonction, en supposant une taille de mémoire tampon suffisante :

Paramètres régionaux lpLocaleName lpScripts
Anglais (États-Unis) fr-FR LATN
Hindi (Inde) hi-IN Deva
Japonais (Japon) ja-JP Hani; Hira; Caractères Kana

La liste ne contient pas le script latin, sauf s’il s’agit d’une partie essentielle du système d’écriture utilisé pour les paramètres régionaux. Toutefois, les caractères latins sont souvent utilisés dans le contexte des paramètres régionaux pour lesquels ils ne sont pas natifs, comme pour un nom d’entreprise étranger. Dans l’exemple ci-dessus pour l’hindi en Inde, le seul script récupéré est « Deva » (pour DÉVANÂGARÎ), bien que les caractères latins puissent également apparaître dans le texte hindi. La fonction DownlevelVerifyScripts a un indicateur spécial pour traiter ce cas.

Le fichier d’en-tête et la DLL requis font partie du téléchargement des API d’atténuation de l' IDN (Internationalized Domain Name) de Microsoft , disponible dans le Centre de téléchargement MSDN.

Configuration requise

Condition requise Valeur
Client minimal pris en charge
Windows [Applications de bureau XP uniquement]
Serveur minimal pris en charge
Windows Serveur 2003 [ applications de bureau uniquement]
Composant redistribuable
api d’atténuation des IDN (internationalized domain Name) Microsoft sur Windows XP (SP2 ou version ultérieure), Windows Server 2003 (SP1 ou version ultérieure) ou Windows Vista
En-tête
Idndl. h
DLL
Idndl.dll

Voir aussi

Prise en charge des langues nationales

Fonctions de prise en charge linguistique nationale

Gestion des noms de domaine internationaux (IDNs)

DownlevelGetStringScripts

DownlevelVerifyScripts

GetLocaleInfo