Gestione del linguaggio dell'interfaccia utente
Multilingual User Interface (MUI) consente alle applicazioni di gestire le lingue dell'interfaccia utente in due modi. Un'applicazione può usare un approccio semplice alla gestione del linguaggio per impostazione predefinita alle impostazioni della lingua del sistema operativo. In alternativa, l'applicazione può supportare le proprie lingue da cui l'utente può selezionare. L'API MUI consente anche all'applicazione di accedere direttamente alle lingue e agli elenchi linguistici supportati dal sistema operativo e gestiti dal caricatore di risorse. La parte restante di questo argomento definisce le lingue supportate dal sistema e il meccanismo di fallback del linguaggio.
Lingue gestite dal sistema operativo
Lingua/installazione predefinita dell'interfaccia utente del sistema
La lingua predefinita dell'interfaccia utente del sistema è la lingua della versione localizzata usata per configurare Windows. Tutti i menu, le finestre di dialogo, i messaggi di errore e i file della Guida sono rappresentati in questa lingua, tranne quando l'utente seleziona una lingua diversa.
In Windows Vista e versioni successive, la lingua dell'interfaccia utente predefinita del sistema è nota come "lingua di installazione" e svolge un ruolo più limitato. Per la maggior parte dei casi, viene sostituito dalle lingue dell'interfaccia utente preferite dal sistema. Tuttavia, in determinati contesti è utile avere un unico linguaggio di installazione che è sempre noto per essere completamente supportato.
Nota
Le applicazioni Windows, ad esempio Paint, Blocco note, Wordpad e opzioni di menu, verranno comunque visualizzate nella lingua dell'interfaccia utente predefinita del sistema dopo una distribuzione MUI.
Non è disponibile alcuna funzione MUI per impostare la lingua predefinita dell'interfaccia utente del sistema. Per recuperare questo linguaggio, l'applicazione può chiamare GetSystemDefaultUILanguage.
Lingua dell'interfaccia utente di sistema
Il sistema operativo definisce la lingua dell'interfaccia utente di sistema come lingua dell'interfaccia utente che può essere impostata da un amministratore nella scheda Avanzate della parte delle opzioni internazionali e della lingua di Pannello di controllo. Il sistema operativo usa questa lingua se l'utente corrente non ha effettuato impostazioni di lingua specifiche o se non è stato eseguito alcun account attivo. La lingua può essere modificata solo se nel computer è installata più di una lingua dell'interfaccia utente.
Nota
Il sistema operativo deve essere riavviato per tutti gli utenti e i servizi per visualizzare l'effetto della modifica della lingua.
Non è disponibile alcuna funzione MUI per impostare la lingua dell'interfaccia utente di sistema. Per recuperare questo valore, un'applicazione destinata a Windows Vista e successivamente può chiamare GetSystemPreferredUILanguages e ottenere la prima lingua nell'elenco delle lingue dell'interfaccia utente preferite dal sistema. Le applicazioni destinate a sistemi operativi pre-Windows Vista non possono usare GetSystemPreferredUILanguages e devono essere basate sul presupposto che la lingua dell'interfaccia utente del sistema sia sempre la stessa della lingua dell'interfaccia utente predefinita del sistema.
Lingua dell'interfaccia utente
La lingua dell'interfaccia utente utente determina la lingua dell'interfaccia utente usata per menu, finestre di dialogo, file della Guida e così via. Può essere impostato dall'utente corrente nella scheda Lingua della parte delle opzioni internazionali e della lingua di Pannello di controllo. Questa lingua può essere modificata solo se nel computer è installata più di una lingua dell'interfaccia utente. Si noti che l'utente dovrà disconnettersi e quindi accedere di nuovo per visualizzare l'effetto. Ad esempio, una multinazionale vuole distribuire Windows in tutte le sue filiali. L'azienda crea un processo di installazione globale, che installa la versione in lingua inglese di Windows in tutti i client, indipendentemente dalla posizione. Allo stesso tempo, installa moduli linguistici specifici a seconda dell'unità organizzativa di cui un computer è membro. Quando l'utente accede per la prima volta a un sistema operativo appena installato, Windows viene visualizzato come versione localizzata.
In Windows Vista e versioni successive la lingua dell'interfaccia utente è la prima lingua nell'elenco delle lingue preferite dell'interfaccia utente. Si noti che le lingue di fallback possono essere usate se determinate risorse non sono disponibili in questa lingua.
Nei sistemi operativi pre-Windows Vista, la lingua dell'interfaccia utente utente è in genere la stessa della lingua dell'interfaccia utente predefinita del sistema. Tuttavia, per MuI di Windows, le due lingue possono essere diverse.
Per recuperare la lingua dell'interfaccia utente dell'utente, un'applicazione può chiamare GetUserDefaultUILanguage o GetUserPreferredUILanguages. L'applicazione non può modificare la lingua dell'interfaccia utente, perché non esiste alcuna funzione per impostarla.
Elenchi di lingue gestiti dal sistema operativo
Elenco lingue dell'interfaccia utente preferite dal sistema
Il caricatore di risorse gestisce un elenco di lingue dell'interfaccia utente preferite dal sistema. Inclusi in questo elenco sono le lingue preferite dal sistema operativo per le proprie risorse, ad esempio menu e finestre di dialogo, messaggi, file INF e file della Guida. L'elenco è costituito dalla lingua dell'interfaccia utente predefinita del sistema e dalla lingua dell'interfaccia utente di sistema e dai relativi fallback. Un'applicazione può recuperare le lingue dell'interfaccia utente preferite dal sistema chiamando GetSystemPreferredUILanguages.
Elenco lingue dell'interfaccia utente preferite dall'utente
Il caricatore di risorse usa un elenco di lingue dell'interfaccia utente preferite dall'utente che include le lingue preferite dall'utente. Il caricatore di risorse usa le risorse corrispondenti alle lingue di questo elenco, se disponibili, per un determinato thread dell'applicazione. Queste lingue hanno la precedenza su tutte le preferenze di sistema. Per recuperare le lingue preferite dell'interfaccia utente, l'applicazione può chiamare GetUserPreferredUILanguages.
Elenco di lingue preferite dell'interfaccia utente
In Windows Vista e versioni successive, il caricatore di risorse gestisce un elenco di lingue dell'interfaccia utente preferite di processo costituito da un massimo di cinque lingue valide impostate da un processo in esecuzione per un'applicazione MUI. Le lingue possono essere impostate dall'applicazione con una chiamata a SetProcessPreferredUILanguages. L'applicazione può recuperare le lingue chiamando GetProcessPreferredUILanguages.
Elenco lingue dell'interfaccia utente preferite thread
In Windows Vista e versioni successive, il caricatore di risorse usa un elenco di lingue dell'interfaccia utente preferite di thread costituito da un massimo di cinque lingue valide impostate da un thread in un processo in esecuzione per un'applicazione MUI. Queste lingue vengono usate per personalizzare le lingue dell'interfaccia utente dell'applicazione e renderle diverse dalla lingua del sistema operativo. L'elenco delle lingue dell'interfaccia utente preferite del thread si basa sulle lingue dell'interfaccia utente preferite dall'utente, sulle lingue dell'interfaccia utente preferite dal sistema e sulla lingua dell'interfaccia utente predefinita del sistema.
Per impostare le lingue dell'interfaccia utente preferite del thread, l'applicazione deve chiamare SetThreadPreferredUILanguages. Per recuperare queste lingue, l'applicazione chiama GetThreadPreferredUILanguages.
Rappresentazione in lingua neutra
Una lingua neutra è rappresentata solo come lingua, senza area geografica o impostazioni locali. Ad esempio, la rappresentazione neutra della lingua inglese (Canada), en-CA, è rappresentata come "en". Anche se una lingua neutra non è associata agli aspetti di un'area o delle impostazioni locali, è possibile associarla a un set di risorse. In genere, una risorsa di lingua neutra si basa sull'uso nell'area più diffusa per la lingua.
Si supponga che l'applicazione MUI localizza le risorse linguistiche tedesche per il tedesco (Svizzera) rappresentato come de-CH e tedesco (Austria) rappresentate come de-AT, mentre si crea un set completo di risorse per il tedesco (Germania) rappresentato come de-DE. È necessario prendere decisioni per questa applicazione considerando l'intero file di risorse. Se l'applicazione duplica le risorse de-DE come risorse di lingua neutre, deve fornire una lingua di fallback per il caricatore di risorse. Se il caricatore non trova un file di risorse specifico della lingua per de-CH o per de-AT, esegue il fallback alle risorse "de" indipendenti dalla lingua. Queste risorse sono più probabilmente più appropriate rispetto alle risorse per una lingua completamente diversa, ad esempio l'inglese (Stati Uniti), che sono le uniche altre possibili fallback.
Come un altro esempio, un'applicazione potrebbe non localizzare affatto per Il Belize. Tuttavia, il supporto di una preferenza di lingua inglese (Belize), rappresentato come en-BZ, consente all'applicazione di eseguire il fallback alle risorse "en".
Fallback del linguaggio nel caricatore di risorse
Windows Vista e versioni successive organizzano le impostazioni della lingua dell'interfaccia utente in un elenco di lingue di fallback preordinato usato dal caricatore di risorse. Per formare l'elenco, il sistema operativo combina diverse lingue, nell'ordine indicato:
Lingue dell'interfaccia utente preferite thread, costituite da linguaggio dell'interfaccia utente thread e dal formato neutro. Gli esempi sono fr-FR per francese (Francia) e la sua forma neutra "fr" ed es-ES per spagnolo (Spagna) e la sua forma neutra "es".
Elaborare le lingue preferite dell'interfaccia utente, costituite dalla lingua dell'interfaccia utente del processo e dal formato neutro. Un esempio è de-DE per tedesco (Germania) e la sua forma neutra "de".
Lingua dell'interfaccia utente utente e forma neutra. Un esempio è ja-JP per giapponese (Giappone) e la sua forma neutra "ja".
Lingua dell'interfaccia utente di sistema e forma neutra. Un esempio è it-IT per italiano (Italia) e la sua forma neutra "it".
Nota
Questa lingua è inclusa nell'elenco di fallback solo quando la lingua dell'interfaccia utente utente non è impostata.
Lingua dell'interfaccia utente predefinita del sistema e forma neutra. Un esempio è es-ES per spagnolo (Spagna) e la sua forma neutra "es".
Di seguito viene illustrato l'elenco di fallback unito. Si noti che la duplicazione delle lingue, ad esempio es-ES ed es, viene eliminata. Poiché l'esempio imposta la lingua dell'interfaccia utente su ja-JP, la lingua dell'interfaccia utente di sistema non viene visualizzata nell'elenco di fallback unito.
fr-FR, fr, es-ES, es, de-DE, de, ja-JP, ja-JP, ja
Quando si caricano risorse per un'applicazione MUI, il caricatore di risorse tenta di selezionare uno dei file corrispondenti all'elenco di lingue dell'interfaccia utente preferite per il thread dell'applicazione attualmente in esecuzione. Se il caricatore di risorse non riesce a trovare una corrispondenza diretta tra una lingua selezionata e la prima risorsa specifica della lingua nell'elenco di fallback unito, controlla le lingue successive nell'elenco finché non trova un fallback accettabile.
Se il caricatore di risorse non trova alcun file necessario, deve usare un linguaggio di fallback "valido garantito". Per la tecnologia delle risorse MUI, il caricatore di risorse determina la lingua di fallback dai dati di configurazione delle risorse forniti. Per altre informazioni, vedere Gestione risorse MUI.
Argomenti correlati