Share via


Função SetProcessPreferredUILanguages (winnls.h)

Define os idiomas de interface do usuário preferenciais do processo para o processo do aplicativo. Para obter mais informações, consulte Gerenciamento de linguagem de interface do usuário.

Sintaxe

BOOL SetProcessPreferredUILanguages(
  [in]            DWORD    dwFlags,
  [in, optional]  PCZZWSTR pwszLanguagesBuffer,
  [out, optional] PULONG   pulNumLanguages
);

Parâmetros

[in] dwFlags

Sinalizadores que identificam o formato de idioma a ser usado para os idiomas de interface do usuário preferenciais do processo. Os sinalizadores são mutuamente exclusivos e o padrão é MUI_LANGUAGE_NAME.

Recomendamos que você use MUI_LANGUAGE_NAME em vez de MUI_LANGUAGE_ID.

Valor Significado
MUI_LANGUAGE_ID
As cadeias de caracteres de linguagem do parâmetro de entrada estão no formato de identificador de idioma .
MUI_LANGUAGE_NAME
As cadeias de caracteres de linguagem do parâmetro de entrada estão no formato de nome de idioma .

[in, optional] pwszLanguagesBuffer

Ponteiro para um buffer de várias cadeias de caracteres com terminação nula dupla que contém uma lista ordenada e delimitada por nulo na ordem decrescente de preferência. Se houver mais de cinco idiomas no buffer, a função definirá apenas os cinco primeiros idiomas válidos.

Como alternativa, esse parâmetro poderá conter NULL se nenhuma lista de idiomas for necessária. Nesse caso, a função limpa os idiomas de interface do usuário preferenciais para o processo.

[out, optional] pulNumLanguages

Ponteiro para o número de idiomas que foram definidos na lista de idiomas de processo do buffer de entrada, até um máximo de cinco.

Valor retornado

Retornará TRUE se tiver êxito ou FALSE caso contrário. Para obter informações de erro estendidas, o aplicativo pode chamar GetLastError, que pode retornar o seguinte código de erro:

  • ERROR_INVALID_PARAMETER. Um parâmetro inválido é especificado.
Se a lista de idiomas de interface do usuário preferenciais do processo estiver vazia ou se os idiomas especificados para o processo não forem válidos, a função terá êxito e definirá 0 no parâmetro pulNumLanguages .

Comentários

O ideal é que os aplicativos chamem SetProcessPreferredUILanguages assim que possível após a inicialização.

Depois que essa função retornar, o aplicativo poderá chamar GetProcessPreferredUILanguages para verificar e examinar a lista de idiomas resultante.

Quando MUI_LANGUAGE_ID é especificado, as cadeias de caracteres de linguagem de parâmetro de entrada devem usar linguagem hexadecimal

identificadores que não incluem o 0x à esquerda e têm 4 caracteres de comprimento. Por exemplo, en-US deve ser

passado como "0409" e en como "0009".

Nota O uso de MUI_LANGUAGE_NAME é recomendado em MUI_LANGUAGE_ID.
 

Assinatura do C#

[DllImport("Kernel32.dll", CharSet = CharSet.Auto)]
        static extern System.Boolean SetProcessPreferredUILanguages(
            System.UInt32 dwFlags,
            System.String pwszLanguagesBuffer,
            ref System.UInt32 pulNumLanguages
            );

Requisitos

   
Cliente mínimo com suporte Windows 7 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 R2 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho winnls.h (inclua Windows.h)
Biblioteca Kernel32.lib
DLL Kernel32.dll

Confira também

GetProcessPreferredUILanguages

Interface do Usuário Multilíngue

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