Compartilhar via


Localidades e idiomas

O termo "idioma" indica uma coleção de propriedades usadas na comunicação falada e escrita. Cada idioma tem um nome de idioma e um identificador de idioma que indicam a de página de código específica (ANSI, DOS, Macintosh) usada para representar a localização geográfica para o idioma no sistema operacional. Um idioma neutro é indicado por um nome como "en" para inglês. Uma linguagem mais geograficamente específica pode ser indicada por um nome que inclui informações de localidade e país/região. Por exemplo, a localidade inglês (Estados Unidos) tem o nome do idioma "en-US".

Uma "localidade" é uma coleção de informações de preferência do usuário relacionadas à linguagem representadas como uma lista de valores. O Windows XP dá suporte a mais de 150 localidades e o Windows Vista dá suporte a cerca de 200. Cada localidade é definida por um idioma e uma ordem de classificação e tem um nome de localidade e um identificador de localidade. Um exemplo de um nome de localidade para alemão (Alemanha) é "de-DE_phonebook".

Cada sistema operacional tem pelo menos uma localidade instalada e geralmente tem muitas localidades das quais o usuário pode selecionar. Cada localidade tem uma variedade de informações associadas a ela, além de seu nome e identificador. Os tipos de informações de localidade são descritos em constantes de informações de localidade.

O sistema operacional atribui uma localidade a cada thread, atribuindo inicialmente a "localidade padrão do sistema", definida por LOCALE_SYSTEM_DEFAULT. Essa localidade é definida quando o sistema operacional é instalado ou quando o usuário o seleciona usando a parte de opções regionais e de idioma do Painel de Controle. Ao executar um thread em um processo que pertence ao usuário, o sistema operacional atribui a "localidade padrão do usuário" ao thread. Essa localidade é definida por LOCALE_USER_DEFAULT. Um aplicativo pode substituir qualquer um dos padrões usando a função SetThreadLocale para definir explicitamente a localidade para um thread.

A implementação de um idioma requer uma localidade correspondente. O sistema operacional implementa uma linguagem neutra selecionando os dados para a localidade associada a uma versão específica do idioma, geralmente a localidade mais generalizada.

A partir do Windows Vista, é possível que um idioma específico corresponda a uma localidade complementar, que é um tipo de localidade personalizada. Como as localidades complementares compartilham um único identificador de localidade, seus aplicativos devem lidar com essas localidades e os idiomas correspondentes por nome em vez de por identificador.

Os conceitos de linguagem estão intimamente relacionados aos conceitos de localidade, mas os dois termos não são intercambiáveis. Como regra geral, as funções relacionadas ao Interface do Usuário Multilíngue lidar com idiomas, enquanto as funções NLS atuam em localidades.

Os tópicos a seguir são abordados nesta seção:

sobre o suporte à linguagem nacional

páginas de código

de Constantes de Informações de Localidade

de Interface do Usuário Multilíngue

Tabela de Localizações Geográficas

de Gerenciamento de Linguagem da Interface do Usuário

SetThreadLocale