Utilisation de pseudo-locales pour les tests de localisation
Les pseudo-locales sont intégrées à Windows Vista et aux versions ultérieures, de sorte que vous pouvez y accéder via les API de prise en charge des langues nationales (NLS). Vous pouvez utiliser les pseudo-locales pour tester la localisabilité de vos applications. Cette rubrique comprend les procédures d'utilisation des pseudo-locales.
Remarque
L'énumération des pseudo-locales doit faire l'objet d'une attention particulière, que ce soit dans votre code ou dans la section des options régionales et linguistiques du panneau de configuration. Nous y reviendrons plus loin dans cette rubrique.
Les noms des pseudo-locales sont « qps-ploc », « qps-ploca » et « qps-plocm ». Depuis Windows 10, la pseudo-locale « qps-Latn-x-sh » est également disponible.
Récupérer des informations sur les pseudo-locales
Vous pouvez utiliser GetLocaleInfoEx pour obtenir des informations sur un pseudo-local. Transmettez à la fonction le nom du pseudo-local en question (voir la liste des noms ci-dessus). Par exemple, « qps-plocm » pour le pseudo-local miroir.
wchar_t languageIdentifier[5];
int rc{ ::GetLocaleInfoEx(L"qps-plocm", LOCALE_ILANGUAGE, languageIdentifier, 5) };
Utiliser LocaleNameToLCID avec les pseudo-locaux
Vous pouvez appeler la fonction de mappage NLS LocaleNameToLCID avec le nom d'un pseudo-local.
LCID lcid{ ::LocaleNameToLCID(L"qps-plocm", 0) };
Activer les pseudo-locaux pour l'énumération
Dans votre application, vous pouvez appeler EnumSystemLocalesEx pour énumérer les locales reconnues par le système. La partie des options régionales et linguistiques du Panneau de configuration appelle également EnumSystemLocalesEx pour établir la liste des locales qu'elle affiche. Cependant, par défaut, les quatre pseudo-locales énumérées ci-dessus ne sont pas reconnues par le système et ne seront donc pas renvoyées par EnumSystemLocalesEx.
Remarque
Windows 10, version 1709 et antérieures : Activez les pseudo-locaux en ajoutant des clés au Registre Windows. Les modifications sont effectuées sous la touche HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Nls
pour les langues installées sur le système d'exploitation. Chaque clé indiquée ci-dessous est le LCID hexadécimal correspondant à la pseudo-locale activée. Chaque valeur est de type chaîne (REG_SZ).
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Nls\Locale]
"00000501"="1" // qps-ploc (Windows Vista and later)
"000005fe"="7" // qps-ploca (Windows Vista and later)
"00000901"="1" // qps-Latn-x-sh (Windows 10 and later)
"000009ff"="d" // qps-plocm (Windows Vista and later)
Windows 10, version 1803 et plus récente : La modification du registre Windows n'a aucun effet. Cependant, vous pouvez toujours appeler les API NLS non énumératives avec les noms des pseudo-locales pour remplir votre interface utilisateur (UI).