AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Betriebssystem Sprache auslesen

Offene Frage von "Bummi"
Ein Thema von firlefanz · begonnen am 28. Mai 2013 · letzter Beitrag vom 29. Mai 2013
Antwort Antwort
firlefanz

Registriert seit: 15. Feb 2013
5 Beiträge
 
#1

Betriebssystem Sprache auslesen

  Alt 28. Mai 2013, 13:18
Hallo zusammen,

ich möchte die Betriebssystem Sprache auslesen (mit Delphi 2010), dabei ist mir egal, ob "en" oder "en-US" etc. ermittelt wird, wichtig ist mir eine Unterscheidung nach Englisch und Deutsch.

Habe versucht, Google dafür zu nutzen, aber bekomme bei Suchbegriffen mit Delphi und Sprache oder Language etc nichts Vernünftiges raus

Vielen Dank für eure Hilfe im voraus

Firlefanz
  Mit Zitat antworten Zitat
sHoXx
(Gast)

n/a Beiträge
 
#2

AW: Betriebssystem Sprache auslesen

  Alt 28. Mai 2013, 13:22
womöglich hilft dir das schon weiter: http://www.delphifaq.com/faq/f135.shtml

erster Google-Eintrag den ich gefunden habe
  Mit Zitat antworten Zitat
Benutzerbild von milos
milos

Registriert seit: 14. Jul 2008
Ort: Bern (CH)
508 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Betriebssystem Sprache auslesen

  Alt 28. Mai 2013, 13:23
Versuch das Mal:
Delphi-Quellcode:
uses
  SysUtils, Dialogs;

procedure TForm1.FormCreate(Sender: TObject);
var
  i : Integer;
begin
  i := Languages.IndexOf(SysLocale.DefaultLCID);
  ShowMessage(Languages.Name[i]);
end;
Kann es gerade nicht testen, scheint jedoch das richtige zu sein. ^^

Edit: Da war wohl einer schneller mit dem genau gleichen Google Eintrag den ich auch als ersten Link gefunden habe^^
Milos
  Mit Zitat antworten Zitat
firlefanz

Registriert seit: 15. Feb 2013
5 Beiträge
 
#4

AW: Betriebssystem Sprache auslesen

  Alt 29. Mai 2013, 11:09
Vielen Dank. Das hat mir sehr geholfen
  Mit Zitat antworten Zitat
generic

Registriert seit: 24. Mär 2004
Ort: bei Hannover
2.415 Beiträge
 
Delphi XE5 Professional
 
#5

AW: Betriebssystem Sprache auslesen

  Alt 29. Mai 2013, 15:00
Möchtest du die Betriebssystemsprache wissen oder die beim angemeldeten Benutzer eingestellt ist?

Seit Windows 7 gibt es dort (abhängig von der Version) Unterschiede.

Zitat:
Sprachpakete sind über Windows Update als optionale Updates für Windows 7 Ultimate verfügbar. Sie werden nicht automatisch installiert. Wenn Sie Windows 7 Enterprise verwenden, wenden Sie sich an den Systemadministrator, um Informationen zum Installieren weiterer Sprachen zu erhalten.
Windows 7 ist immer Englisch im Bauch, bei dem Benutzer ist aber eine Sprache vorinstalliert.
Bei Ultimate und Enterprise kann die Anzeige-Sprache durch jeden Benutzer gewählt werden.
Coding BOTT - Video Tutorials rund um das Programmieren - https://www.youtube.com/@codingbott

Geändert von generic (29. Mai 2013 um 15:02 Uhr)
  Mit Zitat antworten Zitat
firlefanz

Registriert seit: 15. Feb 2013
5 Beiträge
 
#6

AW: Betriebssystem Sprache auslesen

  Alt 29. Mai 2013, 15:03
Betriebssystem-Sprache reicht mir.

Es geht darum, den einstellbaren Default für ein neu installiertes Spiel zu setzen, das deutsche und englische Sprache unterstützt.
  Mit Zitat antworten Zitat
Nintendo

Registriert seit: 16. Feb 2009
82 Beiträge
 
#7

AW: Betriebssystem Sprache auslesen

  Alt 29. Mai 2013, 16:52
Ähm, und wo finde ich die Indizes für all die anderen Sprachen. Deutsch hat den Index Nummer 6.

Welchen Index hat die englische Sprache, welchen die französische. Wo gibt es hierzu Doku?
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#8

AW: Betriebssystem Sprache auslesen

  Alt 29. Mai 2013, 17:27
Du gehst nicht über den Index des Array aus Language sondern über den Locale identifier von hier Language Identifier Constants and Strings


Delphi-Quellcode:
// DE = 1031 = $0407
var
 LCID:Integer;
begin
  LCID := Languages.indexOf(SysLocale.DefaultLCID);
  Showmessage( IntToStr(Languages.LocaleID[LCID])
               + '[' +IntToHex(Languages.LocaleID[LCID],4) +']'
               + '-' + Languages.LocaleName[LCID]
               + '-' + Languages.Name[LCID]);
end;
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
Nintendo

Registriert seit: 16. Feb 2009
82 Beiträge
 
#9

AW: Betriebssystem Sprache auslesen

  Alt 29. Mai 2013, 18:02
Du gehst nicht über den Index des Array aus Language sondern über den Locale identifier von hier Language Identifier Constants and Strings


Delphi-Quellcode:
// DE = 1031 = $0407
var
 LCID:Integer;
begin
  LCID := Languages.indexOf(SysLocale.DefaultLCID);
  Showmessage( IntToStr(Languages.LocaleID[LCID])
               + '[' +IntToHex(Languages.LocaleID[LCID],4) +']'
               + '-' + Languages.LocaleName[LCID]
               + '-' + Languages.Name[LCID]);
end;
Danke erst mal für die Antwort!

Das verblüfft mich jetzt. Ich hatte soeben diese Idee:

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
var i: integer; s,s1,s2: String;
begin
  //i := Languages.IndexOf(SysLocale.DefaultLCID);
  s := '';
  for i := 0 to Languages.Count-1 do
  begin
    s1 := 'Index: '+ IntToStr(i);
    s2 := Languages.Name[i];
    s := s1 + ' ' + s2;
    Memo1.Lines.Add(s);
    s := '';
  end;
  //Label2.Caption := IntToStr(i);
  //ShowMessage(Languages.Name[i]);
end;
Damit erhalte ich je Index eine Sprache. Mit Ihrer Methode erhalte ich jedoch 1031[0407]-German(Germany)

Ich suche das, um die Systemsprache zu ermitteln, um in einer eigenen Anwendung davon abhängig die Bedienersprache einzustellen.
Daher suchte ich eine Tabelle mit den Indizes.

Damit ich später abhängig von diesem Index die richtige Sprache in meiner Anwendung eistellen kann.

.
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#10

AW: Betriebssystem Sprache auslesen

  Alt 29. Mai 2013, 19:05
Ich würde mich nur nicht auf den Index verlassen sondern mich per Languages.IndexOf auf den Locale identifier beziehen.
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:50 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz