Impostazioni locali e lingue

Il termine "language" indica una raccolta di proprietà utilizzate nella comunicazione parlata e scritta. Ogni lingua ha un nome di lingua e un identificatore di lingua che indicano la tabella codici specifica (ANSI, DOS, Macintosh) utilizzata per rappresentare la posizione geografica per la lingua nel sistema operativo. Una lingua neutra è indicata da un nome come "en" per l'inglese. Una lingua più specifica geograficamente può essere indicata da un nome che include sia le impostazioni locali che le informazioni relative al paese o all'area geografica. Ad esempio, le impostazioni locali inglese (Stati Uniti) hanno il nome della lingua "en-US".

Una "impostazioni locali" è una raccolta di informazioni sulle preferenze utente correlate alla lingua rappresentate come un elenco di valori. Windows XP supporta più di 150 impostazioni locali e Windows Vista supporta circa 200. Ogni impostazione locale è definita da una lingua e da un ordinamento e ha sia un nome delle impostazioni locali che un identificatore delle impostazioni locali. Un esempio di nome delle impostazioni locali per tedesco (Germania) è "de-DE_phonebook".

Ogni sistema operativo ha almeno una delle impostazioni locali installate e spesso ha molte impostazioni locali da cui l'utente può selezionare. A ogni impostazione locale è associata un'ampia gamma di informazioni, ad eccezione del nome e dell'identificatore. I tipi di informazioni sulle impostazioni locali sono descritti in Costanti informazioni sulle impostazioni locali.

Il sistema operativo assegna le impostazioni locali a ogni thread, assegnando inizialmente le impostazioni locali predefinite del sistema definite da LOCALE_SYSTEM_DEFAULT. Queste impostazioni locali vengono impostate quando il sistema operativo viene installato o quando l'utente lo seleziona usando la parte delle opzioni internazionali e della lingua del Pannello di controllo. Quando si esegue un thread in un processo appartenente all'utente, il sistema operativo assegna le impostazioni locali predefinite dell'utente al thread. Queste impostazioni locali sono definite da LOCALE_USER_DEFAULT. Un'applicazione può eseguire l'override di entrambe le impostazioni predefinite usando la funzione SetThreadLocale per impostare in modo esplicito le impostazioni locali per un thread.

L'implementazione di una lingua richiede impostazioni locali corrispondenti. Il sistema operativo implementa una lingua indipendente selezionando i dati per le impostazioni locali associate a una versione specifica della lingua, in genere le impostazioni locali più diffuse.

A partire da Windows Vista, è possibile che una determinata lingua corrisponda a impostazioni locali supplementari, ovvero un tipo di impostazioni locali personalizzate. Poiché tutte le impostazioni locali supplementari condividono un singolo identificatore delle impostazioni locali, le applicazioni devono gestire queste impostazioni locali e le lingue corrispondenti in base al nome anziché all'identificatore.

I concetti del linguaggio sono strettamente correlati ai concetti relativi alle impostazioni locali, ma i due termini non sono intercambiabili. Come regola generale, le funzioni correlate all'interfaccia utente multilingue gestiscono le lingue, mentre le funzioni NLS agiscono sulle impostazioni locali.

Questo articolo descrive gli argomenti seguenti:

Informazioni sul supporto per la lingua nazionale

Tabelle codici

Costanti relative alle informazioni sulle impostazioni locali

Interfaccia utente multilingue

Tabella delle posizioni geografiche

Gestione del linguaggio dell'interfaccia utente

SetThreadLocale