![]() |
Locale unter MacOS auslesen
Guten Tag.
Zur Zeit bin ich dabei einen Teil unserer Software testweise nach Firemonkey zu portieren, um die Lauffähigkeit auf dem Mac zu untersuchen. Nun stolpere ich ein wenig bei dem Auslesen der Systemsprache. unter Windows wurde bisher
Delphi-Quellcode:
verwendet.
GetLocaleInfo(LOCALE_USER_DEFAULT, LOCALE_SABBREVLANGNAME, LangDriver, $FF)
Dies lieferte bisher den Windows-Sprachcode zurück, von dem ich mich jetzt wahrscheinlich sowieso verabschieden darf, da ich jetzt eigentlich TLanguages wechseln wollte.
Delphi-Quellcode:
Mit diesem Code wird allerdings unter MacOS der aIndex immer -1. Ich habe mich auch schon etwas weiter durch die IndexOf-Funktion durchdebuggt - die von UserDefaultLocale gelieferte LocaleID habe ich in den aLanguages bisher nicht wieder gefunden.
var
aString : string; // Ausgabe des gefundenen Locales in einem TText... aIndex : integer; aLanguages : TLanguages; aLid : TLocaleID; begin aLanguages := TLanguages.Create; aLid := aLanguages.UserDefaultLocale; aIndex := aLanguages.IndexOf(aLid); if aIndex <> -1 then begin try aString := inttostr(aIndex) + ' ' + aLanguages.LocaleName[aIndex]; except aString := inttostr(aIndex) + ' - Nicht gefunden!!!'; end; end; Was habe ich übersehen? Gibt es irgendwelche Alternativen, die ich bisher nicht bedacht habe? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:11 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz