Partager via


Fonction EnumUILanguagesA (winnls.h)

Énumère les langues d’interface utilisateur disponibles sur le système d’exploitation et appelle la fonction de rappel avec chaque langue de la liste.

Syntaxe

BOOL EnumUILanguagesA(
  [in] UILANGUAGE_ENUMPROCA lpUILanguageEnumProc,
  [in] DWORD                dwFlags,
  [in] LONG_PTR             lParam
);

Paramètres

[in] lpUILanguageEnumProc

Pointeur vers une fonction de rappel définie par l’application EnumUILanguagesProc fonction de rappel. EnumUILanguages appelle cette fonction à plusieurs reprises pour énumérer les langues de la liste.

[in] dwFlags

Indicateurs identifiant le format de langue et le filtrage. Les indicateurs suivants spécifient le format de la langue à passer à la fonction de rappel. Les indicateurs de format s’excluent mutuellement et MUI_LANGUAGE_ID est la valeur par défaut.

Valeur Signification
MUI_LANGUAGE_ID
Transmettez l’identificateur de langue dans la chaîne de langue à la fonction de rappel.
MUI_LANGUAGE_NAME
Transmettez le nom de langue dans la chaîne de langue à la fonction de rappel.
 

Les indicateurs suivants spécifient le filtrage de la fonction à utiliser pour énumérer les langues. Les indicateurs de filtrage s’excluent mutuellement et la valeur par défaut est MUI_LICENSED_LANGUAGES.

Valeur Signification
MUI_ALL_INSTALLED_LANGUAGES
Énumérez toutes les langues installées disponibles pour le système d’exploitation.
MUI_LICENSED_LANGUAGES
Énumérez toutes les langues installées disponibles et sous licence à utiliser.
MUI_GROUP_POLICY
Énumérer toutes les langues installées disponibles et sous licence, et qui sont autorisées par

stratégie de groupe.

 

Windows Vista et versions ultérieures : l’application peut définir dwFlags sur 0, ou sur un ou plusieurs des indicateurs spécifiés. Un paramètre de 0 entraîne la valeur par défaut du paramètre MUI_LANGUAGE_ID | MUI_LICENSED_LANGUAGES.

Windows 2000, Windows XP, Windows Server 2003 : L’application doit définir dwFlags sur 0.

[in] lParam

Valeur définie par l’application.

Valeur de retour

Retourne TRUE si elle réussit ou FALSE sinon. Pour obtenir des informations d’erreur étendues, l’application peut appeler GetLastError, qui peut retourner l’un des codes d’erreur suivants :

  • ERROR_INVALID_FLAGS. Les valeurs fournies pour les indicateurs n’étaient pas valides.
  • ERROR_INVALID_PARAMETER. L’une des valeurs de paramètre n’est pas valide.

Remarques

Cette fonction énumère les langues d’interface utilisateur disponibles et, selon l’indicateur spécifié, sous licence pour une utilisation sur le système d’exploitation. Il transmet des identificateurs de langue ou des noms de langue, un par un, à la EnumUILanguagesProc fonction de rappel. La fonction EnumUILanguages continue de transmettre des identificateurs de langue ou des noms à la fonction de rappel jusqu’à ce que la dernière langue soit trouvée ou que la fonction de rappel retourne FAUX.

Pour les applications qui s’exécutent uniquement sur Windows Vista et versions ultérieures, MUI_LANGUAGE_NAME est recommandée sur MUI_LANGUAGE_ID. MUI_LANGUAGE_NAME permet la différenciation entre les langues associées à un paramètres régionaux supplémentaires.

Si l’indicateur MUI_LANGUAGE_ID est spécifié dans l’appel à cette fonction, les chaînes passées au rappel

la fonction sera des identificateurs de langage hexadécimaux qui n’incluent pas le 0x de début et qui seront 4

caractères de longueur. Par exemple, en-US sera passée en tant que « 0409 » et en « 0009 ». La valeur « 1000 » est passée à la fonction de rappel pour toute langue associée à des paramètres régionaux supplémentaires. Cette valeur correspond à la valeur hexadécimale de LOCALE_CUSTOM_UNSPECIFIED. Il ne fait pas la distinction entre les paramètres régionaux supplémentaires, même si la langue sélectionnée se trouve dans la liste des langues d’interface utilisateur préférées de l’utilisateur ou dans la liste des langues d’interface utilisateur préférées par le système.

signature C#

[DllImport("Kernel32.dll", CharSet = CharSet.Auto)]
        static extern System.Boolean EnumUILanguages(
            EnumUILanguagesProc lpUILanguageEnumProc,
            System.UInt32 dwFlags,
            System.IntPtr lParam
            );

Note

L’en-tête winnls.h définit EnumUILanguages en tant qu’alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Exigences

Exigence Valeur
client minimum pris en charge Windows 2000 Professionnel [applications de bureau | Applications UWP]
serveur minimum pris en charge Windows 2000 Server [applications de bureau | Applications UWP]
plateforme cible Windows
d’en-tête winnls.h (include Windows.h)
bibliothèque Kernel32.lib
DLL Kernel32.dll

Voir aussi

EnumUILanguagesProc

GetSystemDefaultUILanguage

GetUserDefaultUILanguage

interface utilisateur multilingue

fonctions d’interface utilisateur multilingues