Configuraciones regionales e idiomas

El término "idioma" indica una colección de propiedades usadas en la comunicación hablada y escrita. Cada idioma tiene un nombre de idioma y un identificador de idioma que indican la página de códigos concreta (ANSI, DOS, Macintosh) utilizada para representar la ubicación geográfica del idioma en el sistema operativo. Un idioma neutro se indica mediante un nombre como "en" para inglés. Un idioma más específico geográficamente se puede indicar mediante un nombre que incluya información regional y de país o región. Por ejemplo, el inglés de configuración regional (Estados Unidos) tiene el nombre de idioma "en-US".

Una "configuración regional" es una colección de información de preferencias de usuario relacionada con el idioma representada como una lista de valores. Windows XP admite más de 150 configuraciones regionales y Windows Vista admite aproximadamente 200. Cada configuración regional se define mediante un idioma y un criterio de ordenación, y tiene un nombre de configuración regional y un identificador de configuración regional. Un ejemplo de nombre de configuración regional para alemán (Alemania) es "de-DE_phonebook".

Cada sistema operativo tiene al menos una configuración regional instalada y, a menudo, tiene muchas configuraciones regionales desde las que el usuario puede seleccionar. Cada configuración regional tiene una variedad de información asociada, aparte de su nombre e identificador. Los tipos de información de configuración regional se describen en Constantes de información de configuración regional.

El sistema operativo asigna una configuración regional a cada subproceso, asignando inicialmente la "configuración regional predeterminada del sistema", definida por LOCALE_SYSTEM_DEFAULT. Esta configuración regional se establece cuando se instala el sistema operativo o cuando el usuario lo selecciona mediante la parte de opciones regionales y de idioma de la Panel de control. Cuando se ejecuta un subproceso en un proceso que pertenece al usuario, el sistema operativo asigna la "configuración regional predeterminada del usuario" al subproceso. Esta configuración regional se define mediante LOCALE_USER_DEFAULT. Una aplicación puede invalidar cualquiera de los valores predeterminados mediante la función SetThreadLocale para establecer explícitamente la configuración regional de un subproceso.

La implementación de un idioma requiere una configuración regional correspondiente. El sistema operativo implementa un idioma neutro seleccionando los datos de la configuración regional asociada a una versión específica del idioma, normalmente la configuración regional más generalizada.

A partir de Windows Vista, es posible que un idioma determinado se corresponda con una configuración regional complementaria, que es un tipo de configuración regional personalizada. Dado que las configuraciones regionales complementarias comparten un único identificador de configuración regional, las aplicaciones deben controlar estas configuraciones regionales y los idiomas correspondientes por nombre en lugar de por identificador.

Los conceptos de lenguaje están estrechamente relacionados con los conceptos de configuración regional, pero los dos términos no son intercambiables. Como regla general, las funciones relacionadas con la interfaz de usuario multilingüe tratan con idiomas, mientras que las funciones NLS actúan sobre configuraciones regionales.

En esta sección se tratan los siguientes temas:

Acerca de la compatibilidad con idiomas nacionales

Páginas de códigos

Constantes de información de configuración regional

Interfaz de usuario multilingüe

Tabla de ubicaciones geográficas

Administración del lenguaje de la interfaz de usuario

SetThreadLocale