Gestion du langage de l’interface utilisateur
L’interface utilisateur multilingue (MUI) permet à vos applications de gérer les langues d’interface utilisateur de deux façons. Une application peut utiliser une approche simple de la gestion de la langue en définissant par défaut les paramètres de langue du système d’exploitation. L’application peut également prendre en charge ses propres langues à partir desquelles l’utilisateur peut sélectionner. L’API MUI permet également à votre application d’accéder directement aux langues et listes de langues prises en charge par le système d’exploitation et gérée par le chargeur de ressources. Le reste de cette rubrique définit les langues prises en charge par le système et le mécanisme de secours linguistique.
Langues gérées par le système d’exploitation
Langue de l’interface utilisateur par défaut du système/langue d’installation
La langue de l’interface utilisateur par défaut du système est la langue de la version localisée utilisée pour configurer Windows. Tous les menus, boîtes de dialogue, messages d’erreur et fichiers d’aide sont représentés dans cette langue, sauf lorsque l’utilisateur sélectionne une autre langue.
Sur Windows Vista et versions ultérieures, le langage d’interface utilisateur par défaut du système est appelé « langue d’installation » et joue un rôle plus limité. Dans la plupart des cas, il est remplacé par les langages d’interface utilisateur préférés du système. Toutefois, dans certains contextes, il est utile d’avoir une langue d’installation unique qui est toujours connue pour être entièrement prise en charge.
Note
Les applications Windows telles que Paint, Le Bloc-notes, Wordpad et les options de menu sont toujours affichées dans le langage d’interface utilisateur par défaut du système après un déploiement MUI.
Aucune fonction MUI n’est disponible pour définir la langue d’interface utilisateur par défaut du système. Pour récupérer ce langage, l’application peut appeler GetSystemDefaultUILanguage.
Langage de l’interface utilisateur système
Le système d’exploitation définit la langue de l’interface utilisateur du système comme langue d’interface utilisateur qui peut être définie par un administrateur dans l’onglet Avancé de la partie options régionales et linguistiques du Panneau de configuration. Le système d’exploitation utilise cette langue si l’utilisateur actuel n’a pas effectué de paramètres de langue spécifiques ou si aucun compte actif n’est connecté. La langue ne peut être modifiée que si plusieurs langues d’interface utilisateur sont installées sur l’ordinateur.
Note
Le système d’exploitation doit être redémarré pour tous les utilisateurs et services afin de voir l’effet du changement de langue.
Aucune fonction MUI n’est disponible pour définir la langue de l’interface utilisateur système. Pour récupérer cette valeur, une application ciblée sur Windows Vista et ultérieurement peut appeler GetSystemPreferredUILanguages et obtenir la première langue dans la liste des langues d’interface utilisateur préférées du système. Les applications ciblées sur les systèmes d’exploitation pré-Windows Vista ne peuvent pas utiliser GetSystemPreferredUILanguages et doivent être basées sur l’hypothèse que la langue de l’interface utilisateur système est toujours identique à la langue de l’interface utilisateur par défaut du système.
Langue de l’interface utilisateur
La langue de l’interface utilisateur détermine la langue de l’interface utilisateur utilisée pour les menus, les boîtes de dialogue, les fichiers d’aide, etc. Il peut être défini par l’utilisateur actuel dans l’onglet Langue de la partie options régionales et linguistiques du Panneau de configuration. Cette langue ne peut être modifiée que si plusieurs langues d’interface utilisateur sont installées sur l’ordinateur. Notez que l’utilisateur devra se déconnecter, puis se reconnecter pour voir l’effet. Par exemple, une société multinationale souhaite déployer Windows dans toutes ses filiales. La société crée un travail d’installation global, qui installe la version anglaise de Windows sur tous les clients, quel que soit l’emplacement. En même temps, il installe des modules de langage spécifiques en fonction de l’unité organisationnelle dont un ordinateur est membre. Lorsque l’utilisateur se connecte pour la première fois à un système d’exploitation nouvellement installé, Windows apparaît comme une version localisée.
Sur Windows Vista et versions ultérieures, la langue de l’interface utilisateur est la première langue de la liste des langues d’interface utilisateur préférées de l’utilisateur. Notez que les langues de secours peuvent être utilisées si des ressources particulières ne sont pas disponibles dans cette langue.
Sur les systèmes d’exploitation antérieurs à Windows Vista, la langue de l’interface utilisateur est généralement la même que la langue de l’interface utilisateur par défaut du système. Toutefois, pour Windows MUI, les deux langues peuvent être différentes.
Pour récupérer la langue de l’interface utilisateur, une application peut appeler GetUserDefaultUILanguage ou GetUserPreferredUILanguages. L’application ne peut pas modifier la langue de l’interface utilisateur, car il n’existe aucune fonction pour la définir.
Listes de langues gérées par le système d’exploitation
Liste des langues d’interface utilisateur préférées du système
Le chargeur de ressources gère une liste de langues d’interface utilisateur préférées du système. Les langues incluses dans cette liste sont préférées par le système d’exploitation pour ses propres ressources, telles que les menus et les dialogues, les messages, les fichiers INF et les fichiers d’aide. La liste est constituée de la langue de l’interface utilisateur par défaut du système et de la langue de l’interface utilisateur système et de leurs secours. Une application peut récupérer les langages d’interface utilisateur préférés du système en appelant GetSystemPreferredUILanguages.
Liste des langues d’interface utilisateur préférées de l’utilisateur
Le chargeur de ressources utilise une liste de langues d’interface utilisateur préférées de l’utilisateur qui inclut les langues que l’utilisateur préfère. Le chargeur de ressources utilise des ressources correspondant aux langues de cette liste, le cas échéant, pour un thread d’application particulier. Ces langues sont prioritaires sur toutes les préférences système. Pour récupérer les langues d’interface utilisateur préférées de l’utilisateur, votre application peut appeler GetUserPreferredUILanguages.
Traiter la liste des langues d’interface utilisateur préférées
Sur Windows Vista et versions ultérieures, le chargeur de ressources gère une liste de langues d’interface utilisateur préférées de processus comprenant jusqu’à cinq langues valides définies par un processus en cours d’exécution pour une application MUI. Les langues peuvent être définies par l’application avec un appel à SetProcessPreferredUILanguages. L’application peut récupérer les langues en appelant GetProcessPreferredUILanguages.
Liste des langues d’interface utilisateur préférées du thread
Sur Windows Vista et versions ultérieures, le chargeur de ressources utilise une liste de langues d’interface utilisateur préférées de thread qui se compose de cinq langues valides définies par un thread dans un processus en cours d’exécution pour une application MUI. Ces langues sont utilisées pour personnaliser les langues de l’interface utilisateur de l’application et les rendre différentes de la langue du système d’exploitation. La liste des langues d’interface utilisateur préférées du thread est basée sur les langues d’interface utilisateur préférées de l’utilisateur, les langues d’interface utilisateur préférées du système et la langue de l’interface utilisateur par défaut du système.
Pour définir les langues d’interface utilisateur préférées du thread, l’application doit appeler SetThreadPreferredUILanguages. Pour récupérer ces langages, l’application appelle GetThreadPreferredUILanguages.
Représentation linguistique neutre
Une langue neutre est représentée en tant que langue seule, sans région ou paramètres régionaux. Par exemple, la représentation neutre de la langue anglaise (Canada), en-CA, est représentée sous la forme « en ». Même si une langue neutre n’est pas associée aux aspects d’une région ou de paramètres régionaux, vous pouvez l’associer à un jeu de ressources. En règle générale, une ressource de langue neutre est basée sur l’utilisation dans la région la plus répandue pour la langue.
En guise d’illustration, supposons que votre application MUI localise les ressources de langue allemande pour l’allemand (Suisse) représentées comme de-CH et l’allemand (Autriche) représentées en tant que de-AT, tout en créant un ensemble complet de ressources pour l’allemand (Allemagne) représentées comme de-DE. Vous devez prendre des décisions pour cette application en tenant compte des fichiers de ressources entiers. Si l’application dupliquez les ressources de-DE en tant que ressources linguistiques neutres, elle doit fournir un langage de secours pour le chargeur de ressources. Si le chargeur ne trouve pas de fichier de ressources spécifique à un langage particulier pour de-CH ou pour de-AT, il revient aux ressources « de » neutres en langue. Ces ressources sont probablement plus appropriées que les ressources pour une langue complètement différente, par exemple, l’anglais (États-Unis), qui sont les seuls autres secours possibles.
Comme autre exemple, une application peut ne pas se localiser du tout pour le Belize. Toutefois, le soutien d’une préférence linguistique de l’anglais (Belize), représenté en tant que en-BZ, permet à l’application de revenir aux ressources « en ».
Secours linguistique dans le chargeur de ressources
Windows Vista et les paramètres de langue de l’interface utilisateur dans une liste de langues de secours précommandée utilisée par le chargeur de ressources. Pour former la liste, le système d’exploitation combine plusieurs langues, dans l’ordre indiqué :
Langages d’interface utilisateur préférés de thread, constitués du langage d’interface utilisateur de thread et de sa forme neutre. Les exemples sont fr-FR pour le français (France) et sa forme neutre « fr » et es-ES pour l’espagnol (Espagne) et sa forme neutre « es ».
Traiter les langages d’interface utilisateur préférés, constitués du langage d’interface utilisateur de processus et de sa forme neutre. Par exemple, de-DE pour l’Allemand (Allemagne) et sa forme neutre « de ».
Langue de l’interface utilisateur et sa forme neutre. Par exemple, ja-JP japonais (Japon) et sa forme neutre « ja ».
Langue de l’interface utilisateur système et sa forme neutre. Par exemple, it-IT pour l’Italien (Italie) et sa forme neutre « it ».
Note
Cette langue est incluse uniquement dans la liste de secours lorsque la langue de l’interface utilisateur n’est pas définie.
Langue de l’interface utilisateur par défaut du système et sa forme neutre. Par exemple, es-ES pour l’espagnol (Espagne) et sa forme neutre « es ».
L’exemple suivant montre la liste de secours fusionnée. Notez que la duplication des langues, par exemple, es-ES et es, est éliminée. Dans la mesure où l’exemple définit la langue de l’interface utilisateur sur ja-JP, la langue de l’interface utilisateur système n’apparaît pas dans la liste de secours fusionnée.
fr-FR, fr, es-ES, es, de-DE, de, ja-JP, ja
Lors du chargement de ressources pour une application MUI, le chargeur de ressources tente de sélectionner l’un des fichiers correspondant à la liste des langues d’interface utilisateur préférées du thread pour le thread d’application en cours d’exécution. Si le chargeur de ressources ne trouve pas de correspondance directe entre une langue sélectionnée et la première ressource spécifique à la langue dans la liste de secours fusionnée, elle vérifie les langues suivantes dans la liste jusqu’à ce qu’elle trouve un secours acceptable.
Si le chargeur de ressources ne trouve aucun fichier dont il a besoin, il doit utiliser une langue de secours « garantie bonne ». Pour la technologie de ressource MUI, le chargeur de ressources détermine le langage de secours à partir des données de configuration de ressources fournies. Pour plus d’informations, consultez gestion des ressources MUI.
Rubriques connexes