NLS-Terminologie

In diesem Thema werden Begriffe definiert, die bei der Arbeit mit NLS-Funktionen wichtig sind.

Gebietsschema- und Sprachbegriffe

In der folgenden Tabelle werden Gebietsschema- und Sprachbegriffe zusammengefasst. Siehe auch Gebietsschemas und Sprachen.

Sprachgruppe Sprache für Programme, die Unicode nicht unterstützen Standards und Formate
Zweck Stellt alle Tastaturlayouts, Eingabemethoden-Editoren (IMEs), TrueType-Schriftarten, Schriftartlinks, Lizenzpaketdateien (LPKs), Bitmapschriftarten und Codepageübersetzungstabellen bereit, die vom Betriebssystem für eine Gruppe von Sprachen benötigt werden. Daher wirkt sich auf alle anderen Einstellungen in dieser Liste aus. Bestimmt, welche Bitmapschriftarten und OEM-, ANSI- und Macintosh-Codepages Standardeinstellungen für das Betriebssystem sind. Diese Sprache betrifft nur Anwendungen, die nicht vollständig Unicode sind. Vor Windows XP wurde diese Sprache als "Systemschema" bezeichnet. Bestimmt, welche Einstellungen für die Formatierung von Datumsangaben, Uhrzeiten, Währungen und Zahlen als Standard für jeden Benutzer verwendet werden. Bestimmt auch die Sortierreihenfolge für das Sortieren von Text. Vor Windows XP wurden Standards und Formate als "Benutzerschema" bezeichnet.
Erster Satz Installation Installation Installation
Ändern von Benutzern Regionale Optionen (Systemsteuerung Element)
Windows XP: Regions- und Sprachoptionen
(nur Administratoren)
Regionale Optionen (Systemsteuerung Element)
Windows XP: Regions- und Sprachoptionen
(nur Administratoren)
Regionale Optionen (Systemsteuerung Element)
Windows XP: Regions- und Sprachoptionen
Standard Westeuropa und USA und Sprachgruppe, die zum Anzeigen der Sprache einer lokalisierten Version erforderlich sind. Sprache der lokalisierten Version. Sprache des lokalisierten Betriebssystems.
Function EnumSystemLanguageGroups GetSystemDefaultLangID GetUserDefaultLCID, GetUserDefaultLocaleName
Threadschema Eingabesprache Standardsprache für die Benutzeroberfläche des Systems
Zweck Bestimmt die Einstellungen, die zum Formatieren von Datumsangaben, Uhrzeiten, Währungen und großen Zahlen für einen Thread verwendet werden. Bestimmt auch die Sortierreihenfolge für das Sortieren von Text. Besteht aus einer Sprache und einer Eingabemethode. Bestimmt die Standardsprache von Menüs und Dialogen, Nachrichten, SETUP-Informationendateien (INF) und Hilfedateien.
Windows Vista und höher: Wird als Installationssprache bezeichnet. Spielt eine eingeschränktere Rolle, die größtenteils durch vom System bevorzugte Benutzeroberflächensprachen ersetzt wird.
Weitere Informationen finden Sie unter Benutzeroberfläche Language Management.
Erster Satz Standardeinstellung: Standards und Formate Installation Installation
Ändern von Benutzern SetThreadLocale Regionale Optionen (Systemsteuerung Element)
Windows XP: Regions- und Sprachoptionen
Nein
Standard Standards und Formate Sprache der lokalisierten Version mit Standardeingabemethode. Sprache der lokalisierten Version.
Function GetThreadLocale GetKeyboardLayout GetSystemDefaultUILanguage
Sprache der System-UI, vom System bevorzugte Ui-Sprachen Benutzeroberflächensprache, vom Benutzer bevorzugte Benutzeroberflächensprachen Bevorzugte Ui-Sprachen für Threads
Zweck Bestimmen Sie die Sprache von Menüs und Dialogfeldern, Nachrichten, INF-Dateien und Hilfedateien für das Betriebssystem. Weitere Informationen finden Sie unter Benutzeroberfläche Language Management. Bestimmen Sie die Sprache von Menüs und Dialogen, Nachrichten und Hilfedateien für den Benutzer. Weitere Informationen finden Sie unter Benutzeroberfläche Language Management. Windows Vista und höher: Geben Sie die bevorzugten Sprachen für Anwendungsthreads an. Weitere Informationen finden Sie unter Benutzeroberfläche Language Management.
Erster Satz Standardeinstellung: NULL Standardeinstellung: NULL Standardeinstellung: NULL
Ändern von Benutzern Regions- und Sprachoptionen
(nur Administratoren)
Regionale Optionen (Systemsteuerung Element)
Windows XP: Regions- und Sprachoptionen
SetThreadPreferredUILanguages
Standard Windows Vista und höher: Sprache der lokalisierten Version, gefolgt von fallbacks. Vor Windows Vista: Sprache der lokalisierten Version.
Windows Vista und höher: Sprache der lokalisierten Version, gefolgt von fallbacks.
NULL-Liste
Function GetSystemPreferredUILanguages GetUserDefaultUILanguage, GetUserPreferredUILanguages GetThreadPreferredUILanguages
Bevorzugte Benutzeroberflächensprachen verarbeiten
Zweck Windows 7 und höher: Bestimmen sie die bevorzugten Sprachen für einen Anwendungsprozess. Weitere Informationen finden Sie unter Benutzeroberfläche Language Management.
Erste Menge Der Standardwert ist NULL.
Ändern von Benutzern Regionale und Sprachoptionen (nur Administratoren)
Standard Windows 7 und höher: Sprache der lokalisierten Version, gefolgt von allen Fallbacks.
Function GetProcessPreferredUILanguages, SetProcessPreferredUILanguages

Codepage

Die Unfähigkeit von 256-Codepunkt-Codepages, das Mischen von Skripts in einem einzelnen Text zu unterstützen, war einer der Hauptgründe für den Anstieg von Unicode. Codepages bleiben wichtig für das Schreiben von Konsolencode, für die Verwaltung von Legacyanwendungen oder die Ausführung in älteren Versionen von Windows und für die Interfacing mit nicht von Microsoft unterstützter Software, die nicht unicode-fähig ist.

Eingabesprache

Die Eingabesprache wird durch eine prozessspezifische Datenvariable dargestellt, die eine Sprache (z. B. Griechisch) und eine Eingabemethode (z. B. die Tastatur) beschreibt. Mehrere Eingabesprachen können installiert werden, und der Benutzer kann zwischen ihnen wechseln.

Zum Festlegen und Abrufen des Eingabesprachwerts ruft die Anwendung LoadKeyboardLayout bzw. GetKeyboardLayoutauf. Benutzer können Eingabesprachen über die Registerkarte Sprachen im Bereich "Regionale Optionen" und "Sprachoptionen" des Systemsteuerung.

Die Standardeingabesprache ist die lokalisierte Sprache des Betriebssystems und die Einstellung, die aktiv ist, wenn eine neue Anwendung gestartet wird (oder wenn für einige Anwendungen ein neues Fenster geöffnet wird). Der Wechsel zu einer anderen Eingabesprache erfolgt pro Anwendung. Anders ausgedrückt: Zwei verschiedene Eingabesprachen können in zwei verschiedenen Anwendungen verwendet werden. Beispielsweise kann ein Benutzer Deutsch mithilfe des internationalen USA-Tastaturlayouts, Englisch mit Spracheingabe (mit Nicht-Microsoft-Software) und Spanisch mit einem IME in drei verschiedenen Anwendungen eingeben.

Sprache für Nicht-Unicode-Programme

Die Sprache für Nicht-Unicode-Programme (früher als "System locale" bezeichnet) bestimmt die Codepage, die standardmäßig im Betriebssystem verwendet wird. Die Einstellung sprache für Nicht-Unicode-Programme wirkt sich nur auf Nicht-Unicode-Anwendungen aus, d.&a0;B. ANSI-Anwendungen. Das Festlegen der Sprache weist Windows, ein nicht Unicode-basiertes Betriebssystem zu emulieren, das in dieser Sprache lokalisiert ist. Wenn Sie die Sprache für Nicht-Unicode-Programme ändern, werden die erforderlichen Bitmapschriftartdateien installiert, um Nicht-Unicode-Anwendungen in der angegebenen Sprache zu unterstützen. Damit der Benutzer eine Sprache für Nicht-Unicode-Programme auswählen kann, muss die entsprechende Sprachgruppe installiert sein. Ihre Anwendung benötigt die Skriptunterstützung, um eine Sprache für Nicht-Unicode-Programme auszuwählen. Die Sprache für Nicht-Unicode-Programme ist eine systemspezifische Einstellung und erfordert einen Neustart, der implementiert werden muss.

Manchmal gibt es keinen erkennbaren Unterschied zwischen zwei Sprachen für Nicht-Unicode-Programme. Dies ist z. B. bei den deutschen (neutralen) und deutschen (Schweiz) -Ortsindizes der Fall. Im Allgemeinen sind die Einstellungen einer Sprachgruppe sehr ähnlich und unterscheiden sich nur in der OEM- oder MAC-Codepage.

Eine ANSI-Anwendung sollte während der Installation die Sprache für Nicht-Unicode-Programme überprüfen. Der Wert wird mit GetACP oder GetOEMCP abgerufen. Es wird keine Funktion zum Festlegen der Sprache für Nicht-Unicode-Programme unterstützt. Benutzer können dies jedoch über die Registerkarte Erweitert im Bereich "Regionale Optionen" und "Sprachoptionen" der Systemsteuerung. Im Folgenden finden Sie einige Beispiele für die Sprache für Nicht-Unicode-Programmeinstellungen:

  1. Ein deutsches Benutzer, das eine japanische Anwendung ausführen möchte, die für japanisch Windows 95 entwickelt wurde, muss Japanisch als Sprache für Nicht-Unicode-Programme auswählen. Nach dieser Auswahl haben nicht-Unicode-deutsche Anwendungen Probleme. Beispielsweise werden deutsche Umlaute ( ): nicht ordnungsgemäß angezeigt.
  2. Ein deutscher Benutzer, der japanischen Text in einer nicht unicode-deutschen Anwendung eingeben möchte, muss Japanisch als Sprache für Nicht-Unicode-Programme auswählen. Wie im ersten Beispiel verursacht dies Probleme bei der Eingabe von deutschem Text in Nicht-Unicode-Anwendungen.
  3. Ein arabischer Benutzer, der Arabisch, Französisch und Englisch in einer nicht-Unicode-arabischen Anwendung eingeben möchte, sollte Arabisch als Sprache für Nicht-Unicode-Programme auswählen, da die arabische ANSI-Codepage die meisten französische und alle englischen Zeichen enthält.

Sprachgruppe

Die Sprachgruppe steuert die Sprache für Nicht-Unicode-Programme, Standards und Formate, Eingabesprachen und Benutzeroberflächensprachen, die ausgewählt werden können. Für jede lokalisierte Version ist die angegebene Sprachgruppe die Standardsprache und kann nicht entfernt werden. Beispielsweise installiert Windows die Sprachgruppe "Europa, Westen" und USA Standardmäßig. Wenn die englische Version von Windows in einem nicht englischsprachigen Land/einer anderen Region installiert ist, installiert der Benutzer in der Regel eine andere Sprachgruppe.

Beim Hinzufügen einer Sprachgruppe kopiert Windows die erforderlichen Tastaturdateien, Eingabemethode-Editoren (IMEs), TrueType-Schriftartdateien, Bitmapschriftartendateien und NLS-Dateien (National Language Support). Durch hinzufügen einer Sprachgruppe werden auch Registrierungswerte für die Schriftartverknüpfung hinzugefügt und Skript-Engines für komplexe Skriptsprachen (Arabisch, Hebräisch, Indic und Thai) installiert.

Neben der Sprachgruppe "Europa, Westen" und "USA gibt es 16 weitere Sprachgruppen:

Arabisch
Armenisch
Baltisch
Zentraleuropa
Kyrillisch
Georgisch
Griechisch
Hebräisch
Indic
Japanisch
Koreanisch
Chinesisch (vereinfacht)
Chinesisch (traditionell)
Thailändisch
Türkischen
Vietnamesisch

Eine beliebige Anzahl und Kombination von Sprachgruppen kann unter jedem Betriebssystem installiert werden. Ein spanischer Benutzer kann z. B. die Kyrillische Sprachgruppe installieren, um an russisch Texten zu arbeiten. In diesem Fall muss eine Textverarbeitungsanwendung auch die kyrillische Sprachgruppe unterstützen.

Hinweis

Wenn Sie die entsprechende Sprachgruppe hinzufügen, kann eine Anwendung text nicht automatisch akzeptieren. Testen wird empfohlen. Beispielsweise kann es für Nicht-Unicode-Anwendungen erforderlich sein, die Sprache für Nicht-Unicode-Programme zu ändern.

Standort

Windows XP: Ein Standort ist ein geografischer Bezeichner. Sie wird durch eine Benutzerdatenvariable dargestellt, die das Land bzw. die Region definiert, in dem bzw. der sich der Benutzer befindet.

Zum Festlegen des Werts ruft die Anwendung SetUserGeoID auf. Um den Wert abzurufen, ruft die Anwendung GetUserGeoID auf.

Standards und Formate

Standards und Formate (früher "Benutzer-Locale") ist eine benutzerspezifische Variable, die die Standardsortierreihenfolge und die Standardeinstellungen für das Formatieren von Datumsangaben, Zeiten, Währungen und Zahlen bestimmt. Die Variable wird als Sprache dargestellt (manchmal in Kombination mit einem Land/einer Region), ist aber keine Sprache selbst. Wenn Sie z. B. die Variable Standards and Formats auf Hebräisch festlegen, gibt dies an, dass der Benutzer die Formatierungskonventionen von Hebräisch und nicht notwendigerweise die hebräische Sprache verwenden möchte. Darüber hinaus bestimmt die Variable Standards and Formats die Zeichenfolge, die für die Namen von Tagen und Monaten verwendet wird. Wenn ein Benutzer beispielsweise "25. November 1998" anzeigt, kann sich die Zeichenfolge "November" basierend auf der Variablen Standards und Formate ändern. Wenn Sie die Variable ändern, wird automatisch ein Eingabe-Locale mit den Standardeinstellungen für die Sprache hinzufügt.

Um die Variableneinstellung Standards and Formats zu erhalten, ruft die Anwendung GetUserDefaultLCID oder GetUserDefaultLocaleName auf. Zum Festlegen der Variablen ist keine NLS-Funktion verfügbar. Benutzer können dies jedoch über die Registerkarte "Region Options" (Region) im Bereich "Regionale Optionen" und "Language Options" (Sprachoptionen) der Systemsteuerung.

Eine Anwendung sollte in der Regel die Variableneinstellungen Standards und Formate verwenden, um Daten anzuzeigen. Eine Anwendung, die ein festes Locale zum Anzeigen von Daten verwendet, sollte jedoch einen bestimmten Locale Identifier übergeben, anstatt LOCALE _ USER _ DEFAULT zu verwenden.

Thread-Locale

Das Thread-Locale wird durch eine Thread-spezifische Locale Data-Variable dargestellt, die die Formatierung von Datumsangaben, Zeiten, Währungen und großen Zahlen für den Thread bestimmt. Standardmäßig wird der Wert für das derzeit für Standards und Formate ausgewählte Locale verwendet. Zum Festlegen des Thread-Locale ruft die Anwendung SetThreadLocale auf. Um das Threadlokaler abzurufen, ruft die Anwendung GetThreadLocale auf.

In den meisten Fällen sollte das Thread-Locale nicht überschrieben werden. Normalerweise sollte es nur verwendet werden, um das Thread-Locale einer Serveranwendung mit der Variablen Standards und Formate eines Clientcomputers zu synchronisieren. Beispielsweise muss eine Finanzkursanwendung für die New York Stock Exchange, die bei Banken weltweit verwendet wird, die Uhrzeit, das Datum und die Aktienkurse in USA anzeigen. Diese Anwendung verwendet SetThreadLocale, um das Thread-Locale auf Englisch (USA) zu setzen, und verwendet dann die NLS-Funktionen, um Datumsangaben, Zeiten und Aktienkurse zu formatieren.

Das Ändern des Thread-Locales wirkt sich nicht auf alle API-Funktionen aus. Daher ist es nicht immer eine zuverlässige Möglichkeit, die Variable Standards und Formats zu überschreiben. Stattdessen sollten Anwendungen, die Standards und Formate steuern, ein festes Gebietsschema verwenden, um Daten anzuzeigen, wobei anstelle von LOCALE USER DEFAULT ein bestimmter Gebietsschemabezeichner übergeben _ _ wird.

NLS-Beispiel

Das folgende Beispiel zeigt die Interaktion zwischen Standards und Formaten, der Sprache für Nicht-Unicode-Programme, dem Speicherort und der Benutzeroberflächensprache.

Ein Benutzer, der aus Brasilien stammt, aber in der USA leben, verfügt über einen Computer, auf dem Windows XP Englisch ausgeführt wird. Der Benutzer legt den Standort auf USA fest, um einen Internetdienstanbieter (ISP) zum Abrufen des Wetters für die USA zu verwenden. Die Variable Standards und Formate ist jedoch auf Spanisch (Brasilien) festgelegt, sodass die Informationen gemäß den standards von Brasilien formatiert werden. Darüber hinaus verwendet der Benutzer einen koreanischen Textprozessor, bei dem es sich um eine ANSI-Anwendung handelt, sodass die Sprache für Nicht-Unicode-Programme auf Koreanisch (Korea) festgelegt ist. Um die Anwendung zu verwenden, verfügt der Benutzer über eine englische Tastatur und installiert auch eine koreanische IME, um eine zweite Eingabesprache zu unterstützen. Der Mitarbeiter des Benutzers, der den Computer gemeinsam verwendet, aber nicht mit Englisch vertraut ist, kann die Benutzeroberflächensprache auf Spanisch (Spanien) festlegen, wenn er den Computer verwendet.

Informationen zur Unterstützung der nationalen Sprache

Gebietsschemas und Sprachen

Multilingual User Interface