Terminologie NLS
Cette rubrique définit des termes importants lors de l’utilisation des fonctionnalités NLS.
Paramètres régionaux et termes linguistiques
Le tableau suivant récapitule les paramètres régionaux et les termes linguistiques. Voir également Paramètres régionaux et langues.
Groupe linguistique | Langue pour les programmes non Unicode | Normes et formats | |
---|---|---|---|
Objectif | Fournit toutes les dispositions du clavier, les éditeurs de méthodes d’entrée (MI, TrueType), les liens de police, les fichiers de package de licence (LPK), les polices bitmap et les tables de traduction de pages de code 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 code 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, ce langage était appelé « paramètres régionaux système ». | Détermine les paramètres utilisés pour la mise en forme des dates, des heures, des devises et des nombres par défaut pour chaque utilisateur. Détermine également l’ordre de tri du texte. Avant Windows XP, les normes et formats étaient appelés « paramètres régionaux utilisateur ». |
Premier jeu | Installation | Installation | Installation |
Comment les utilisateurs peuvent changer | Options régionales (élément Panneau de configuration) Windows XP : Options régionales et linguistiques (administrateurs uniquement) |
Options régionales (élément Panneau de configuration) Windows XP : Options régionales et linguistiques (administrateurs uniquement) |
Options régionales (élément 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 de 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 la mise en forme des dates, des heures, de la devise et des grands nombres d’un thread. Détermine également l’ordre de tri du texte. | Se compose d’un langage et d’une méthode d’entrée. | Détermine la langue par défaut des menus et des boîtes de dialogue, des messages, des fichiers d’informations d’installation (INF) et des fichiers d’aide. Windows Vista et versions ultérieures : Connu sous le nom de 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 des langues de l’interface utilisateur |
Premier jeu | Par défaut, normes et formats | Installation | Installation |
Comment les utilisateurs peuvent changer | SetThreadLocale | Options régionales (élément 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 des threads | |
---|---|---|---|
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 des langues 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 des langues de l’interface utilisateur. | Windows Vista et versions ultérieures : Spécifiez les langages préférés pour les threads d’application. Pour plus d’informations, consultez Gestion des langues de l’interface utilisateur. |
Premier jeu | Valeur par défaut NULL | Valeur par défaut NULL | Valeur par défaut NULL |
Comment les utilisateurs peuvent changer | Options régionales et linguistiques (administrateurs uniquement) |
Options régionales (élément Panneau de configuration) Windows XP : Options régionales et linguistiques |
SetThreadPreferredUILanguages |
Par défaut | Windows Vista et versions ultérieures : Langue de la 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 la 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éterminez les langues préférées pour un processus d’application. Pour plus d’informations, consultez Gestion des langues de l’interface utilisateur. |
Premier jeu | Valeur par défaut : NULL |
Comment les utilisateurs peuvent changer | Options régionales et linguistiques (administrateurs uniquement) |
Par défaut | Windows 7 et versions ultérieures : Langue de la version localisée, suivie de toutes les solutions de secours. |
Fonction | GetProcessPreferredUILanguages, SetProcessPreferredUILanguages |
Page de codes
L’incapacité des pages de codes à 256 codes à prendre en charge le mélange de scripts dans un seul texte a été l’une des raisons les main de l’essor d’Unicode. Les pages de code restent importantes pour l’écriture de code de la console, la gestion des applications héritées ou l’exécution sur des versions antérieures de Windows et l’interaction 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, le 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 elles.
Pour définir et récupérer la valeur de langue d’entrée, l’application appelle Respectivement LoadKeyboardLayout et GetKeyboardLayout. Les utilisateurs peuvent ajouter et supprimer des langues d’entrée via l’onglet Langues dans la partie options régionales et linguistiques de l’Panneau de configuration.
La langue d’entrée par défaut est la langue localisée du système d’exploitation, et c’est le paramètre qui est actif lorsqu’une nouvelle application est démarrée (ou lorsqu’une nouvelle fenêtre est ouverte pour certaines applications). Le basculement vers une autre langue d’entrée s’effectue 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 du clavier international États-Unis, l’anglais à l’aide d’une entrée vocale (avec un 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 paramètre de langage pour les 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 de la langue pour les programmes non Unicode installe les fichiers de police bitmap nécessaires pour prendre en charge les applications non Unicode dans la langue spécifiée. 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 des scripts pour sélectionner une langue pour les programmes non Unicode. Le langage des programmes non Unicode est un paramètre par système et nécessite un redémarrage à implémenter.
Parfois, il n’y a pas de différence notable entre deux langues pour les programmes non Unicode. Par exemple, c’est le 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 case activée le paramètre de langue pour les 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 la langue des programmes non Unicode. Toutefois, les utilisateurs peuvent le modifier à l’aide de l’onglet Avancé dans la partie des options régionales et linguistiques de l’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 windows 95 en japonais doit sélectionner le 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 le japonais comme langue pour les programmes non Unicode. Comme dans le premier exemple, cela entraîne des problèmes lors de la saisie de texte allemand dans les applications non Unicode.
- Un utilisateur arabe qui souhaite taper l’arabe, l’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 ARABE ANSI contient la plupart des caractères Français et tous les caractères anglais.
Groupe linguistique
Le groupe de langues contrôle la langue des programmes non Unicode, des normes et des formats, des langues d’entrée et des langues d’interface utilisateur qui peuvent être sélectionnées. Pour chaque version localisée, le groupe de langues spécifié est le groupe de langues 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/une région non anglophone, l’utilisateur installe généralement un autre groupe linguistique.
Lors de l’ajout d’un groupe de langues, Windows copie (mais ne s’active pas) les fichiers clavier nécessaires, les éditeurs de méthodes d’entrée (MI, ISE), 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ï).
Outre le 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 de langues 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.
Notes
L’ajout du groupe de langues approprié ne permet pas automatiquement à une application d’accepter du texte. Il est recommandé d’effectuer des tests. Par exemple, les applications non Unicode peuvent nécessiter la modification du langage des 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ù réside l’utilisateur.
Pour définir la valeur, l’application appelle SetUserGeoID. Pour récupérer la valeur, l’application appelle GetUserGeoID.
Normes et formats
Standards and Formats (anciennement « paramètres régionaux utilisateur ») est 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, de la devise et des nombres. La variable est présentée en tant que langue (parfois en combinaison avec un pays/une région), mais elle n’est pas une langue elle-même. Par exemple, l’affectation de l’hébreu à la variable Standards et Formats 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 and Formats détermine la chaîne utilisée pour les noms de jours et de mois. Par exemple, si un utilisateur affiche « 25 novembre 1998 », la chaîne « Novembre » peut changer en fonction de la variable Standards and 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 de l’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 des 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 grands nombres pour le thread. Par défaut, elle utilise la valeur des paramètres régionaux actuellement sélectionnés pour Normes et 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 and Formats d’un ordinateur client. Par exemple, une application de négociation d’actions financières pour le New York Stock Exchange, qui est utilisée dans les banques du monde entier, doit afficher l’heure, la date et le cours des actions dans États-Unis formats. Cette application utilise SetThreadLocale pour définir les paramètres régionaux du 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 Normes 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 les 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 vivant dans le États-Unis a un ordinateur exécutant Windows XP Anglais. L’utilisateur définit l’emplacement sur États-Unis d’utiliser un fournisseur de services Internet (ISP) pour obtenir la météo du États-Unis. Toutefois, la variable Normes 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, de sorte que la langue des programmes non Unicode est 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 n’est pas à l’aise avec l’anglais, peut définir la langue de l’interface utilisateur sur espagnol (Espagne) lors de l’utilisation de l’ordinateur.
Rubriques connexes