AGB  ·  Datenschutz  ·  Impressum  







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

Decimalseparator... WinXP vs. Win7???

Ein Thema von haraldr · begonnen am 18. Mai 2011 · letzter Beitrag vom 19. Mai 2011
Antwort Antwort
haraldr

Registriert seit: 16. Jan 2008
Ort: Saggsn
8 Beiträge
 
Delphi XE Enterprise
 
#1

AW: Decimalseparator... WinXP vs. Win7???

  Alt 18. Mai 2011, 16:42
Zunächst vielen Dank für die Antworten.

Ausprobieren kann ich es erst morgen, wenn ich wieder die Gelegenheit habe, auf Win7 zu testen. Wir haben noch überwiegend WinXP im Einsatz.

Harald
  Mit Zitat antworten Zitat
haraldr

Registriert seit: 16. Jan 2008
Ort: Saggsn
8 Beiträge
 
Delphi XE Enterprise
 
#2

AW: Decimalseparator... WinXP vs. Win7???

  Alt 19. Mai 2011, 07:07
So...

Es war eine schwere Geburt.

Ich habe die formatierte Darstellung von Zahlenwerten auf 2 Versionen von Windows 7 ausprobiert.

Die Starter-Version verhält sich wie WindowsXP, dort werden also die Ländereinstellungen des Systems ohne Murren von meiner in Delphi erstellten Software erkannt.

Unter Windows 7 Professional 64bit könnte die Antwort auf den Lösungsvorschlag mit der temporären Umstellung der Ländereinstellungen von Radio Jerewan stammen: Im Prinzip schon...

Da ich zunächst als normaler Benutzer zugange war, brachte die Änderung der Ländereinstellungen keine Besserung. Seltsamerweise zeigte auch mein in Delphi erstelltes Tool trotz English(USA) weiterhin das Komma als Decimalseparator an.
Delphi-Quellcode:
  GetLocaleFormatSettings(GetSystemDefaultLCID, FSettings);
  Edit1.Text:=FSettings.DecimalSeparator;
Als Administrator angemeldet funktionierte der vorgeschlagene Workaround auf Anhieb.
Neuer Reboot... Anmeldung als normaler Benutzer... gleiches Problem.

Erst nachdem ich sämtliche Kombinationen aus Administrator/normaler Benutzer, mit und ohne zwischenzeitliche Reboots durchprobiert hatte, funktionierte plötzlich die Darstellung bzw. das Erkennen des korrekten (deutschen) Zahlenformats... Auch nach einem kompletten Neustart des Systems und Anmeldung als normaler Benutzer.

Dem Endanwender ist eine solche Vorgehensweise vermutlich nicht vermittelbar.
... und ich kann leider nicht reproduzierbar nachvollziehen, welche Wechsel der Ländereinstellungen unter welchem Benutzeraccount ich ausgeführt habe, bevor mir die gewünschten Einstellungen gelungen sind.

Trotzdem mochmals vielen Dank für den Tipp.

Harald
  Mit Zitat antworten Zitat
Benutzerbild von user0815
user0815

Registriert seit: 5. Okt 2007
331 Beiträge
 
Delphi XE2 Professional
 
#3

AW: Decimalseparator... WinXP vs. Win7???

  Alt 19. Mai 2011, 08:04
Hier ist das ganze gut beschrieben: http://www.delphipraxis.net/156447-d...lsettings.html

Delphi-Quellcode:
uses Registry;

{$R *.dfm}

function Win7LocaleCheck : String;
var
  regist : TRegistry;
  s : String;
begin
  s := '';
  regist := TRegistry.create();
  try
    regist.RootKey := HKEY_CURRENT_USER;
    if regist.Openkey('\Control Panel\International', false) then
    begin
      s := 'Locale: ' + regist.ReadString('Locale');
      s := s + '/ LocaleName:' +regist.ReadString('LocaleName');
    end;
    regist.CloseKey;
  finally
    regist.Free;
  end;

  Result := s;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  ShowMessage(Win7LocaleCheck);
end;
  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 03:19 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