Compartilhar via


Função EnumUILanguagesA (winnls.h)

Enumera os idiomas de interface do usuário disponíveis no sistema operacional e chama a função de retorno de chamada com todos os idiomas da lista.

Sintaxe

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

Parâmetros

[in] lpUILanguageEnumProc

Ponteiro para um EnumUILanguagesProc definido pelo aplicativo função de retorno de chamada. EnumUILanguages chama essa função repetidamente para enumerar os idiomas na lista.

[in] dwFlags

Sinalizadores que identificam o formato de idioma e a filtragem. Os sinalizadores a seguir especificam o formato do idioma a ser passado para a função de retorno de chamada. Os sinalizadores de formato são mutuamente exclusivos e MUI_LANGUAGE_ID é o padrão.

Valor Significado
MUI_LANGUAGE_ID
Passe o identificador de idioma na cadeia de caracteres de idioma para a função de retorno de chamada.
MUI_LANGUAGE_NAME
Passe o nome da linguagem na cadeia de caracteres de idioma para a função de retorno de chamada.
 

Os sinalizadores a seguir especificam a filtragem para a função a ser usada na enumeração dos idiomas. Os sinalizadores de filtragem são mutuamente exclusivos e o padrão é MUI_LICENSED_LANGUAGES.

Valor Significado
MUI_ALL_INSTALLED_LANGUAGES
Enumera todos os idiomas instalados disponíveis para o sistema operacional.
MUI_LICENSED_LANGUAGES
Enumera todos os idiomas instalados disponíveis e licenciados para uso.
MUI_GROUP_POLICY
Enumerar todos os idiomas instalados disponíveis e licenciados e que são permitidos por

a política de grupo.

 

Windows Vista e posterior: O aplicativo pode definir dwFlags como 0 ou para um ou mais dos sinalizadores especificados. Uma configuração de 0 faz com que o valor do parâmetro MUI_LANGUAGE_ID padrão | MUI_LICENSED_LANGUAGES.

Windows 2000, Windows XP, Windows Server 2003: O aplicativo deve definir dwFlags como 0.

[in] lParam

Valor definido pelo aplicativo.

Valor de retorno

Retorna verdadeiro se tiver êxito ou false caso contrário. Para obter informações de erro estendidas, o aplicativo pode chamar GetLastError, que pode retornar um dos seguintes códigos de erro:

  • ERROR_INVALID_FLAGS. Os valores fornecidos para sinalizadores não eram válidos.
  • ERROR_INVALID_PARAMETER. Qualquer um dos valores de parâmetro era inválido.

Observações

Essa função enumera os idiomas de interface do usuário disponíveis e, dependendo do sinalizador especificado, licenciado para uso no sistema operacional. Ele passa identificadores de linguagem ou nomes de idioma, um de cada vez, para a função de retorno de chamada EnumUILanguagesProc . A função EnumUILanguages continua a passar identificadores de idioma ou nomes para a função de retorno de chamada até que o último idioma seja encontrado ou a função de retorno de chamada retorne FALSE.

Para aplicativos executados somente no Windows Vista e posteriores, é recomendável MUI_LANGUAGE_NAME em MUI_LANGUAGE_ID. MUI_LANGUAGE_NAME permite a diferenciação entre idiomas associados a umade localidade suplementar .

Se o sinalizador MUI_LANGUAGE_ID for especificado na chamada para essa função, as cadeias de caracteres passadas para o retorno de chamada

a função será identificadores de linguagem hexadecimal que não incluem o 0x à esquerda e serão 4

caracteres de comprimento. Por exemplo, en-US será passado como "0409" e en como "0009". O valor "1000" é passado para a função de retorno de chamada para qualquer idioma associado a uma localidade complementar. Esse valor corresponde ao valor hexadecimal de LOCALE_CUSTOM_UNSPECIFIED. Ele não distingue entre as localidades complementares, mesmo que o idioma selecionado esteja na lista de idiomas de interface do usuário preferenciais do usuário ou na lista de idiomas de interface do usuário preferenciais do sistema.

Assinatura do C#

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

Nota

O cabeçalho winnls.h define EnumUILanguages como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante do pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows 2000 Professional [aplicativos da área de trabalho | Aplicativos UWP]
servidor com suporte mínimo Windows 2000 Server [aplicativos da área de trabalho | Aplicativos UWP]
da Plataforma de Destino Windows
cabeçalho winnls.h (inclua Windows.h)
biblioteca Kernel32.lib
de DLL Kernel32.dll

Consulte também

EnumUILanguagesProc

GetSystemDefaultUILanguage

GetUserDefaultUILanguage

de Interface do Usuário Multilíngue

Funções de interface do usuário multilíngue