Terminologie NLS
Cette rubrique définit des termes importants lors de l’utilisation de la fonctionnalité NLS.
Paramètres régionaux et termes de langue
Le tableau suivant récapitule les paramètres régionaux et les termes de langue. Consultez également paramètres régionaux et langues.
Groupe de langues | Langage pour les programmes non Unicode | Normes et formats | |
---|---|---|---|
objectif | Fournit toutes les dispositions du clavier, les éditeurs de méthode d’entrée (IMEs), les polices TrueType, les liens de police, les fichiers de package de licence (LPK), les polices bitmap et les tables de traduction de pages de codes nécessaires par le système d’exploitation pour un groupe de langues. Par conséquent, affecte tous les autres paramètres de cette liste. | Détermine les polices bitmap et les pages de codes OEM, ANSI et Macintosh par défaut pour le système d’exploitation. Ce langage affecte uniquement les applications qui ne sont pas entièrement Unicode. Avant Windows XP, cette langue était appelée « paramètres régionaux système ». | Détermine les paramètres utilisés pour mettre en forme des dates, des heures, des devises et des nombres comme valeur par défaut pour chaque utilisateur. Détermine également l’ordre de tri du texte. Avant Windows XP, les normes et les formats étaient appelés « paramètres régionaux utilisateur ». |
premier jeu | Installation | Installation | Installation |
Comment les utilisateurs peuvent modifier | Options régionales (élément du Panneau de configuration) Windows XP : options régionales et linguistiques (seuls les administrateurs) |
Options régionales (élément du Panneau de configuration) Windows XP : options régionales et linguistiques (seuls les administrateurs) |
Options régionales (élément du Panneau de configuration) Windows XP : options régionales et linguistiques |
par défaut | Europe occidentale et États-Unis et groupe linguistique requis pour afficher la langue d’une version localisée. | Langue de la version localisée. | Langue du système d’exploitation localisé. |
fonction | EnumSystemLanguageGroups | GetSystemDefaultLangID | GetUserDefaultLCID, GetUserDefaultLocaleName |
Paramètres régionaux du thread | Langue d’entrée | Langue de l’interface utilisateur par défaut du système | |
---|---|---|---|
objectif | Détermine les paramètres utilisés pour mettre en forme des dates, des heures, des devises et de grands nombres pour un thread. Détermine également l’ordre de tri du texte. | Se compose d’une langue et d’une méthode d’entrée. | Détermine la langue par défaut des menus et des dialogues, des messages, des fichiers d’informations de configuration (INF) et des fichiers d’aide. Windows Vista et versions ultérieures : langue d’installation. Joue un rôle plus limité, largement remplacé par les langages d’interface utilisateur préférés du système. Pour plus d’informations, consultez gestion du langage de l’interface utilisateur |
premier jeu | Valeurs par défaut pour les normes et les formats | Installation | Installation |
Comment les utilisateurs peuvent modifier | SetThreadLocale | Options régionales (élément du Panneau de configuration) Windows XP : options régionales et linguistiques |
Non |
par défaut | Normes et formats | Langue de la version localisée avec la méthode d’entrée par défaut. | Langue de la version localisée. |
fonction | GetThreadLocale | GetKeyboardLayout | GetSystemDefaultUILanguage |
Langue de l’interface utilisateur système, langues d’interface utilisateur préférées du système | Langue de l’interface utilisateur, langues d’interface utilisateur préférées de l’utilisateur | Langages d’interface utilisateur préférés du thread | |
---|---|---|---|
objectif | Déterminez la langue des menus et des boîtes de dialogue, des messages, des fichiers INF et des fichiers d’aide pour le système d’exploitation. Pour plus d’informations, consultez gestion du langage de l’interface utilisateur. | Déterminez la langue des menus et des boîtes de dialogue, des messages et des fichiers d’aide pour l’utilisateur. Pour plus d’informations, consultez gestion du langage de l’interface utilisateur. | Windows Vista et versions ultérieures : spécifier les langages préférés pour les threads d’application. Pour plus d’informations, consultez gestion du langage de l’interface utilisateur. |
premier jeu | Valeur par défaut sur NULL | Valeur par défaut sur NULL | Valeur par défaut sur NULL |
Comment les utilisateurs peuvent modifier | Options régionales et linguistiques (seuls les administrateurs) |
Options régionales (élément du Panneau de configuration) Windows XP : options régionales et linguistiques |
SetThreadPreferredUILanguages |
par défaut | Windows Vista et versions ultérieures : Langue de version localisée, suivie de toutes les secours. |
Avant Windows Vista : Langue de la version localisée. Windows Vista et versions ultérieures : Langue de version localisée, suivie de toutes les secours. |
Liste Null |
fonction | GetSystemPreferredUILanguages | GetUserDefaultUILanguage, GetUserPreferredUILanguages | GetThreadPreferredUILanguages |
Traiter les langues d’interface utilisateur préférées | |
---|---|
objectif | Windows 7 et versions ultérieures : Déterminer les langues préférées pour un processus d’application. Pour plus d’informations, consultez gestion du langage de l’interface utilisateur. |
premier jeu | Valeur par défaut sur NULL |
Comment les utilisateurs peuvent modifier | Options régionales et linguistiques (seuls les administrateurs) |
par défaut | Windows 7 et versions ultérieures : Langue de version localisée, suivie de toutes les secours. |
fonction | GetProcessPreferredUILanguages, SetProcessPreferredUILanguages |
Page de codes
L’incapacité des pages de codes de point 256 à prendre en charge le mélange de scripts dans un seul texte était l’une des principales raisons de l’essor d’Unicode. Les pages de code restent importantes pour écrire du code console, pour gérer les applications héritées ou s’exécuter sur des versions antérieures de Windows, et pour interagir avec certains logiciels non-Microsoft qui ne sont pas compatibles Avec Unicode.
Langue d’entrée
La langue d’entrée est représentée par une variable de données par processus qui décrit une langue (par exemple, grec) et une méthode d’entrée (par exemple, le clavier). Plusieurs langues d’entrée peuvent être installées et l’utilisateur peut basculer entre eux.
Pour définir et récupérer la valeur du langage d’entrée, l’application appelle loadKeyboardLayout et GetKeyboardLayout, respectivement. Les utilisateurs peuvent ajouter et supprimer des langues d’entrée via l’onglet Langues dans la partie options régionales et linguistiques du Panneau de configuration.
La langue d’entrée par défaut est la langue localisée du système d’exploitation, et il s’agit du paramètre actif lorsqu’une nouvelle application est démarrée (ou lorsqu’une nouvelle fenêtre est ouverte pour certaines applications). Le passage à un autre langage d’entrée est effectué par application. En d’autres termes, deux langages d’entrée différents peuvent être utilisés dans deux applications différentes. Par exemple, un utilisateur peut taper l’allemand à l’aide de la disposition internationale du clavier des États-Unis, l’anglais à l’aide d’une entrée vocale (avec logiciel non Microsoft) et l’espagnol à l’aide d’un IME dans trois applications différentes.
Langage pour les programmes non Unicode
La langue des programmes non Unicode (anciennement « paramètres régionaux système ») détermine la page de codes utilisée sur le système d’exploitation par défaut. Le langage du paramètre de programmes non Unicode affecte uniquement les applications non Unicode, c’est-à-dire les applications ANSI. La définition de la langue indique à Windows d’émuler un système d’exploitation non Unicode localisé dans cette langue. La modification du langage pour les programmes non Unicode installe les fichiers de police bitmap nécessaires pour prendre en charge les applications non Unicode dans le langage spécifié. Pour permettre à l’utilisateur de sélectionner une langue pour les programmes non Unicode, le groupe de langues approprié doit être installé. Votre application a besoin de la prise en charge du script pour sélectionner un langage pour les programmes non Unicode. Le langage des programmes non Unicode est un paramètre par système et nécessite l’implémentation d’un redémarrage.
Il n’existe parfois aucune différence notable entre deux langages pour les programmes non Unicode. Par exemple, il s’agit du cas des paramètres régionaux allemands (neutres) et allemands (Autriche). En général, les paramètres d’un groupe de langues sont très similaires et diffèrent uniquement dans la page de codes OEM ou MAC.
Une application ANSI doit vérifier la langue du paramètre de programmes non Unicode lors de l’installation. Il utilise GetACP ou GetOEMCP pour récupérer la valeur. Aucune fonction n’est prise en charge pour définir le langage pour les programmes non Unicode. Toutefois, les utilisateurs peuvent le modifier à l’aide de l’onglet Avancé dans la partie options régionales et linguistiques du Panneau de configuration. Voici quelques exemples de langage pour les paramètres de programmes non Unicode :
- Un utilisateur allemand qui souhaite exécuter une application japonaise conçue pour le japonais Windows 95 doit sélectionner japonais comme langue pour les programmes non Unicode. Après cette sélection, les applications allemandes non Unicode rencontrent des problèmes. Par exemple, les umlauts allemands (̈) ne sont pas affichés correctement.
- Un utilisateur allemand qui souhaite taper du texte japonais dans une application allemande non Unicode doit sélectionner japonais comme langue pour les programmes non Unicode. Comme dans le premier exemple, cela provoque des problèmes d’entrée de texte allemand dans des applications non Unicode.
- Un utilisateur arabe qui souhaite taper l’arabe, le français et l’anglais dans une application arabe non Unicode doit sélectionner l’arabe comme langue pour les programmes non Unicode, car la page de codes ANSI arabe contient la plupart des caractères français et tous les caractères anglais.
Groupe de langues
Le groupe de langues contrôle la langue pour les programmes, normes et formats non Unicode, les langues d’entrée et les langues d’interface utilisateur qui peuvent être sélectionnées. Pour chaque version localisée, le groupe de langues spécifié est la valeur par défaut et ne peut pas être supprimé. Par exemple, Windows installe le groupe de langues Europe occidentale et États-Unis par défaut. Par conséquent, si la version anglaise de Windows est installée dans un pays/région non anglophone, l’utilisateur installe généralement un autre groupe de langues.
Lors de l’ajout d’un groupe de langues, Windows copie (mais n’active pas) les fichiers clavier nécessaires, les éditeurs de méthode d’entrée (IMEs), les fichiers de police TrueType, les fichiers de police bitmap et les fichiers .nls (National Language Support). L’ajout d’un groupe de langues ajoute également des valeurs de Registre pour la liaison de polices et installe des moteurs de script pour les langues de script complexes (arabe, hébreu, indic et thaï).
En plus du groupe linguistique Europe occidentale et États-Unis, il existe 16 autres groupes linguistiques :
Arménien Balte Europe centrale Cyrillique Géorgien Grec Hébreu |
Japonais Coréen Chinois simplifié Chinois traditionnel Thaï Turques Vietnamien |
N’importe quel nombre et combinaison de groupes linguistiques peuvent être installés sur n’importe quel système d’exploitation. Par exemple, un utilisateur espagnol peut installer le groupe de langues cyrilliques pour travailler sur des textes russes. Dans ce cas, une application de traitement de texte doit également prendre en charge le groupe de langues cyrilliques.
Note
L’ajout du groupe de langues approprié n’permet pas automatiquement à une application d’accepter du texte. Les tests sont recommandés. Par exemple, les applications non Unicode peuvent nécessiter la modification du langage pour les programmes non Unicode.
Emplacement
Windows XP : un emplacement est un identificateur géographique. Elle est représentée par une variable de données par utilisateur qui définit le pays/la région où l’utilisateur vit.
Pour définir la valeur, l’application appelle SetUserGeoID. Pour récupérer la valeur, l’application appelle GetUserGeoID.
Normes et formats
Les normes et les formats (anciennement « paramètres régionaux utilisateur ») sont une variable par utilisateur qui détermine l’ordre de tri par défaut et les paramètres par défaut pour la mise en forme des dates, des heures, des devises et des nombres. La variable est présentée comme une langue (parfois en combinaison avec un pays/région), mais elle n’est pas une langue elle-même. Par exemple, la définition de la variable Normes et Formats en hébreu indique que l’utilisateur souhaite utiliser les conventions de mise en forme de l’hébreu, pas nécessairement la langue hébraïque. En outre, la variable Standards et Formats détermine la chaîne utilisée pour les noms des jours et des mois. Par exemple, si un utilisateur affiche « 25 novembre 1998 », la chaîne « Novembre » peut changer en fonction de la variable Normes et Formats. La modification de la variable ajoute automatiquement des paramètres régionaux d’entrée avec les paramètres par défaut de la langue.
Pour obtenir le paramètre de variable Standards et Formats, l’application appelle GetUserDefaultLCID ou GetUserDefaultLocaleName. Aucune fonction NLS n’est disponible pour définir la variable. Toutefois, les utilisateurs peuvent le modifier via l’onglet Options de région dans la partie options régionales et linguistiques du Panneau de configuration.
Une application doit généralement utiliser les paramètres de variable Standards et Formats pour afficher les données. Toutefois, une application qui utilise des paramètres régionaux fixes pour afficher les données doit passer un identificateur de paramètres régionaux spécifique au lieu d’utiliser LOCALE_USER_DEFAULT.
Paramètres régionaux du thread
Les paramètres régionaux du thread sont représentés par une variable de données de paramètres régionaux par thread qui détermine la mise en forme des dates, des heures, de la devise et des nombres importants pour le thread. Il est défini par défaut sur la valeur des paramètres régionaux actuellement sélectionnés pour les normes et les formats. Pour définir les paramètres régionaux du thread, l’application appelle SetThreadLocale. Pour récupérer les paramètres régionaux du thread, l’application appelle GetThreadLocale.
Dans la plupart des cas, les paramètres régionaux du thread ne doivent pas être remplacés. Normalement, il doit uniquement être utilisé pour synchroniser les paramètres régionaux de thread d’une application serveur avec la variable Standards et Formats d’une machine cliente. Par exemple, une application de négociation des actions financières pour la Bourse de New York, qui est utilisée dans les banques dans le monde entier, doit afficher l’heure, la date et les cours des actions dans les formats américains. Cette application utilise SetThreadLocale pour définir les paramètres régionaux de thread en anglais (États-Unis), puis utilise les fonctions NLS pour mettre en forme les dates, les heures et les cours des actions.
La modification des paramètres régionaux de thread n’affecte pas toutes les fonctions d’API. Il n’est donc pas toujours un moyen fiable de remplacer la variable Standards et Formats. Au lieu de cela, les applications qui contrôlent les normes et les formats doivent utiliser des paramètres régionaux fixes pour afficher des données, en passant un identificateur de paramètres régionaux spécifique au lieu d’utiliser LOCALE_USER_DEFAULT.
Exemple NLS
L’exemple suivant montre l’interaction entre les normes et les formats, la langue des programmes non Unicode, l’emplacement et la langue de l’interface utilisateur.
Un utilisateur natif du Chili, mais qui vit aux États-Unis dispose d’un ordinateur exécutant Windows XP Anglais. L’utilisateur définit l’emplacement aux États-Unis pour utiliser un fournisseur de services Internet (ISP) pour obtenir la météo pour les États-Unis. Toutefois, la variable Standards et Formats est définie sur Espagnol (Chili) afin que les informations soient mises en forme conformément aux normes chiliennes. En outre, l’utilisateur utilise un traitement de texte coréen, qui est une application ANSI, afin que la langue des programmes non Unicode soit définie sur coréen (Corée). Pour utiliser l’application, l’utilisateur dispose d’un clavier anglais et installe également un IME coréen pour prendre en charge une deuxième langue d’entrée. Le collègue de l’utilisateur, qui partage l’ordinateur, mais qui n’est pas à l’aise avec l’anglais, peut définir la langue de l’interface utilisateur sur l’espagnol (Espagne) lors de l’utilisation de l’ordinateur.
Rubriques connexes