Gebietsschemanamen
Ein Gebietsschemaname basiert auf den Sprachtagskonventionen von IETF BCP 47 (Windows Vista und höher) und wird durch LOCALE_SNAME dargestellt. Im Allgemeinen wird das Muster <language>-<REGION>
verwendet. Hierbei handelt es sich bei der Sprache um einen ISO 639-Sprachcode in Kleinbuchstaben. Die Codes aus ISO 639-1 werden verwendet, wenn verfügbar. Andernfalls werden Codes aus ISO 639-2/T verwendet. REGION gibt einen Iso 3166-1-Landes-/Regionsbezeichner in Großbuchstaben an. Der Gebietsschemaname für Englisch (USA) lautet beispielsweise "en-US" und der Gebietsschemaname für Divehi (Malediven) ist "dv-MV".
Hinweis
Die Konstante LOCALE_NAME_MAX_LENGTH gibt die maximale Länge eines Gebietsschemanamens an. Es enthält Platz für ein beendendes NULL-Zeichen.
Wenn das Gebietsschema ein neutrales Gebietsschema (keine Region) ist, folgt der LOCALE_SNAME Wert dem Muster <language>
. Wenn es sich um ein neutrales Gebietsschema handelt, für das das Skript von Bedeutung ist, ist <language>-<Script>
das Muster .
Wenn ein Gebietsschema für dieselbe Sprache und Region mit einem anderen Skript von einem anderen Gebietsschema unterschieden werden muss, folgt der LOCALE_SNAME Wert dem Muster <language>-<Script>-<REGION>
, wobei Script ein iso 15924-Skriptcode in Großbuchstaben ist. Der LOCALE_SNAME Wert für das spezifische Gebietsschema usbekisch (lateinisch, Usbekistan) lautet beispielsweise "uz-Latn-UZ". Die Skriptkomponente ist nicht enthalten, wenn eine Sprache üblicherweise nur in einem Skript geschrieben wird.
Sortierreihenfolgen für Gebietsschemas werden mithilfe von Sortierreihenfolgebezeichnern festgelegt, z. B. SORT_DEFAULT. Um zwei oder mehr Sortierreihenfolgen für dieselbe Sprache und Region zu unterscheiden, folgt der Gebietsschemaname dem Muster <language>-<REGION>\_<sort order>
. Wenn Sie skript- und sortierreihenfolge unterscheiden müssen, folgt der Name dem Muster <language>-<Script>-<REGION>\_<sort order>
. Die Standardsortierreihenfolge wird nie explizit angegeben, nur die alternative Sortierreihenfolge. Beispielsweise wird "hu-HU" (Ungarn) mit entweder SORT_DEFAULT oder dem numerisch äquivalenten SORT_HUNGARIAN_DEFAULT bezeichnet. Ungarisch (Ungarn) mit Sortierreihenfolge SORT_HUNGARIAN_TECHNICAL wird als "hu-HU_technl" bezeichnet.
Bei einem Ersatzgebietsschema muss der Gebietsschemaname mit dem Namen des zu ersetzenden Gebietsschemas identisch sein. Für ein zusätzliches Gebietsschema sollte der Gebietsschemaname dem Muster von <language>-<REGION>-x-<custom>
oder <language>-<Script>-<REGION>-x-<custom>
folgen, wobei <custom>
eine alphanumerische Zeichenfolge ist, die für das zusätzliche Gebietsschema spezifisch ist. Ein zusätzliches Gebietsschema, das für ein Unternehmen mit dem Namen Fabricam spezifisch ist, kann beispielsweise "en-US-x-fabricam" genannt werden.
Eine Anwendung kann die aktuellen Gebietsschemanamen mithilfe der Funktionen GetSystemDefaultLocaleName und GetUserDefaultLocaleName abrufen. Während jeder Thread mit GetThreadLocale einen eigenen Gebietsschemabezeichner abrufen und festlegen und mit SetThreadLocale festlegen kann, gibt es keine analogen Funktionen zum Abrufen und Festlegen des Gebietsschemas nach Name.