Delphi-PRAXiS
Seite 4 von 4   « Erste     234   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Windows 7: bei manchen Systemen falsches Datumsformat? (https://www.delphipraxis.net/148784-windows-7-bei-manchen-systemen-falsches-datumsformat.html)

RWarnecke 31. Mär 2010 04:35

Re: Windows 7: bei manchen Systemen falsches Datumsformat?
 
Eine andere Möglichkeit ist beim FormatDateTime die folgende Zeile zu benutzen :
Delphi-Quellcode:
FormatDateTime('ddddd', now);
Dabei wird dann das Datum so angezeigt, wie die Ländereinstellungen vom System es rausgeben. Damit kann man dann wieder auch ohne bedenken ein StrToDate durchführen.

Probiert es mal aus und gebt mal Rückmeldung, ob es funktioniert.

mschaefer 31. Mär 2010 08:18

Re: Windows 7: bei manchen Systemen falsches Datumsformat?
 
Das leidliche daran ist, dass man auf Fremdkomponenten kaum Einfluss hat. Es sei den man möchte für alles noch Codewartung machen.
Wahrscheinlich ist ein Dialog zum Umstellen der Datum und Währungseinstellungen von Windows eher die Lösung

Grüße // Martin

sx2008 31. Mär 2010 09:09

Re: Windows 7: bei manchen Systemen falsches Datumsformat?
 
Zitat:

Zitat von cs.rumpelstilzchen
Es machte auf den getesteten Windows 7 - Systemen (3 konnte ich testen) einen Unterschied, ob ich die SysLocale.DefaultLCID (->ergibt US-Format) oder die GetUserDefaultLCID (-> ergibt deutsches Format) benutze. Es ist nur die SysLocale.DefaultLCID betroffen! Anscheinend benutzt Delphi diese in den eigenen Funktionen! Die über GetUserDefaultLCID bezogene LCID ist immer korrekt! :gruebel:
Vermutlich ist die Lokalisierung der getesteten Windows 7-Systeme nur auf User-Ebene erfolgt...

Das wäre doch ein Ansatz, wie man das Problem richtig lösen kann, anstatt nur falsche Korrekturen anzubringen.
(Diese Rumgefrikle wie z.B. in Beitrag #9 kann doch nicht die Lösung sein.)
Wenn die beiden LCIDs unterschiedlich sind, bekommt der Benutzer einen Hinweis was er tun muss um das zu ändern.

RWarnecke 31. Mär 2010 10:26

Re: Windows 7: bei manchen Systemen falsches Datumsformat?
 
Zitat:

Zitat von sx2008
Das wäre doch ein Ansatz, wie man das Problem richtig lösen kann, anstatt nur falsche Korrekturen anzubringen.
(Diese Rumgefrikle wie z.B. in Beitrag #9 kann doch nicht die Lösung sein.)
Wenn die beiden LCIDs unterschiedlich sind, bekommt der Benutzer einen Hinweis was er tun muss um das zu ändern.

Im gewissen Sinne, gebe ich Dir recht. Nur wenn der Anwender ein englisches Windows hat, kann er ja nicht nur für ein Programm auf Deutsch umstellen. Da läuft man doch Gefahr, dass irgendein anderes englische Programm dann wieder nicht funktioniert.

monello_ch 10. Jun 2010 13:12

AW: Windows 7: bei manchen Systemen falsches Datumsformat?
 
Hallo zusammen

Seit ich mit Windows 7 64 Bit arbeite, habe ich das Problem, dass der DecimalSeparator nicht korrekt von den Voreinstellungen übernommen wird. Ländereinstellungen und Sprachvorgaben sind aber korrekt, mehrmals kontrolliert.

Nun hatte ich aus der Not heraus beim Programminit einfach "DecimalSeparator := '.'" gesetzt, damit ich trotzdem vernünftig entwickeln konnte, wobei einige Controls für die Dateneingabe trotzdem noch auf dem ',' beharrten, jedoch den Dezimalpunkt anzeigten. Mühsam.

Soeben die Lösung gefunden, mehr zufällig: Systemsteuerung->Region und Sprache->Datum, Uhrzeit oder Zahlenformat ändern->Weitere Einstellungen...->und auf allen Tabs (Zahlen, Währung, Uhrzeit, Datum) den Button "zurücksetzen" gewählt. Optisch ändert sich gar nix, es war ja schon vorher korrekt für meine Einstellung "Deutsch (Schweiz)", jedoch habe ich jetzt plötzlich auch im Delphi die korrekten Vorgaben, und alle Controls mit Datum / Zahlen verhalten sich nun endlich erwartungsgemäss.

Uff, was bin ich froh geht das nun endlich ohne irgendwelche Hacks...

himitsu 10. Jun 2010 13:32

AW: Windows 7: bei manchen Systemen falsches Datumsformat?
 
Es scheint einfach 2 Orte der Datenspeicherung zu geben
oder einige Auslesefunktionen scheinen einen Defaultwert rauszurücken, wenn was nicht stimmt oder fehlt.

Ich würde eher zu Letzterem tendieren (da hier ein Grund liegen könnte, warum nur nichtenglische "Ausländer" Probleme haben und dieses auch in den englischen Testphasen nicht auffiehl).

Jedenfalls scheint ein Zurücksetzen oder kurzes Auf-englisch-und-dann-auf-deutsch-zurückstellen die/alle Werte dann richtig zu setzen und das Problem zu beheben.

RWarnecke 10. Jun 2010 14:17

AW: Windows 7: bei manchen Systemen falsches Datumsformat?
 
Hallo,

es gab mal eine ganze Serie von Notebooks und glaube auch Rechner von Fujitsu. Da trat das Problem auch mit dem Datumsformat auf. Das lag daran, das die Ländereinstellungen im System nicht richtig gespeichert wurden. Da gab es nur die Abhilfe, dass man die Ländereinstellungen zurücksetzte oder eine andere Einstellung speicherte und dann wieder auf die richtige Einstellung zurückging. Ich habe das ganze dann mit ein bisschen Sourcecode abgefangen. Danach funktionierte es einwandfrei.
Wenn interesse besteht, kann ich diesen hier heute Abend dranhängen.

generic 10. Jun 2010 23:12

AW: Windows 7: bei manchen Systemen falsches Datumsformat?
 
Es ist ein bekannter Windowsbug.

Hier ist noch ein Beitrag über das Thema:
http://www.delphipraxis.net/152005-w...instellun.html

GunterM 30. Jul 2010 10:11

AW: Windows 7: bei manchen Systemen falsches Datumsformat?
 
Hallo, allerseits,

ich kann euch von einer gleichen Situation berichten: Neues Notebook Fujitsu, win7 prof 64 bit. Eine mit Delphi 2010 programmierte Anwendung (Daten aus MS SQL-Server 2008) lief auf dem Vorgänger (32-Bit Vista Prof.) sauber, zeigte in der IDE auch korrekte Formatierungen bei Datums- und Währungswerten sowie Tausender- und Dezimaltrennzeichen an. Sobald ich das Ding compiliert hatte, waren alle Formatierungen in EN-US.

Lösung in euren Beiträgen gefunden - Zurücksetzen der Ländereinstellungen. Danke!

Da das Thema Ländereinstellungen offensichtlich viele beschäftigt: Hab bei Marco Cantu im eHandbook D2010 eine Passage gefunden, dass die Kombi D2010 / Win7 da wesentliche Neuerungen mitbringt.

mkinzler 30. Jul 2010 10:15

AW: Windows 7: bei manchen Systemen falsches Datumsformat?
 
Dieses Problem scheint bei manchen Win7 Installationen vorzukommen, liegt aber an Windows. Dort ist beim Benutzer kein Format hinterlegt. (Sollte durch explizites Setzen beim Benutzer erfolgen)


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:43 Uhr.
Seite 4 von 4   « Erste     234   

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