AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Ländereinstellungen lesen und setzen
Thema durchsuchen
Ansicht
Themen-Optionen

Ländereinstellungen lesen und setzen

Ein Thema von FriendOfDelphi · begonnen am 12. Jun 2011 · letzter Beitrag vom 14. Jun 2011
Antwort Antwort
FriendOfDelphi

Registriert seit: 21. Mai 2010
163 Beiträge
 
Delphi 5 Professional
 
#1

Ländereinstellungen lesen und setzen

  Alt 12. Jun 2011, 23:23
Hallo Allerseits!

Unter Windows (z.B. Win XP) kann man unter "Start\Systemsteurung\Regions- und Sprachoptionen\Regionale Einstellungen" die Formate für Zahlen, Währungen, Uhrzeit und Datum einstellen.
Dort steht dann hier in Deutschland meistens "Deutsch(Deutschland)".
Man kann dann dort z.B. "Englisch (Großbritannien)" einstellen.

Nun zu meiner Frage:
Ich möchte das mein Programm in der Einstellung "Englisch (Großbritannien)" läuft.
Das Programm soll zur Laufzeit prüfen, welche Ländereinstellung auf dem Rechner eingestellt ist und wenn z.B. "Deutsch(Deutschland)" eingestellt ist, diese nur für die Laufzeit des Programms nach "Englisch (Großbritannien)" umstellen.
Nach Beendigung des Programms soll wieder die alte Einstellung vorhanden sein.
Ich habe schon ein bisschen mit SetLocaleInfo experimentiert. Aber da finde ich nur etwas zu einzelnen Einstellung; z.B. den Dezimalseperator: SetLocaleInfo(Locale, LOCALE_SDecimal, '.'); .
Gibt es auch eine Möglichkeit die obige "manuelle" Einstellung von Hand in Delphi zu machen?
Herzlichen Gruß
FriendOfDelphi
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

AW: Ländereinstellungen lesen und setzen

  Alt 12. Jun 2011, 23:33
Ich glaube die versuchst das Symptom zu beheben, anstatt die Ursache. Es gibt in Delphi die globale Variable DecimalSeparator, die festlegt was als Dezimaltrennzeichen verwendet wird. Denn wenn du die Ländereinstellungen veränderst gilt das auch für andere Programme. Das heißt, die anderen Programme könnten dann eventuell nicht mehr funktionieren oder falsche Ergebnisse und Darstellungen liefern.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
FriendOfDelphi

Registriert seit: 21. Mai 2010
163 Beiträge
 
Delphi 5 Professional
 
#3

AW: Ländereinstellungen lesen und setzen

  Alt 14. Jun 2011, 09:31
Ich glaube die versuchst das Symptom zu beheben, anstatt die Ursache. Es gibt in Delphi die globale Variable DecimalSeparator, die festlegt was als Dezimaltrennzeichen verwendet wird. Denn wenn du die Ländereinstellungen veränderst gilt das auch für andere Programme. Das heißt, die anderen Programme könnten dann eventuell nicht mehr funktionieren oder falsche Ergebnisse und Darstellungen liefern.
Stimmt. Da stimme ich Dir zu.
Aber wie ist hier die "richtige" Vorgehensweise?
Soll das Programm den vom Benutzer/Betriebssystem verwendeten Dezimalseparator einfach ignorieren und ein innerhalb des Programms vereinbarten Dezimalseparator verwenden?
Z.B. indem grundsätzlih innerhalb des Programms der Punkt (".") oder das Komma (",") als Dezimalseparator verwendet wird.
Das könnte man ja erreichen, indem man die vom Benutzer eingegebe(n) Float-Zahl(en) überprüft und ggf. den Dezimalseparator austauscht.
Herzlichen Gruß
FriendOfDelphi
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#4

AW: Ländereinstellungen lesen und setzen

  Alt 14. Jun 2011, 09:51
Zum Anzeigen natürlich die vom Benutzer gewählten Systemeinstellungen. Was du intern in deinem Programm nutzt ist egal.
Michael
Ein Teil meines Codes würde euch verunsichern.
  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 12:16 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