AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi FormatDateTime liefert englische Wochentage
Thema durchsuchen
Ansicht
Themen-Optionen

FormatDateTime liefert englische Wochentage

Ein Thema von Hepdepaddel · begonnen am 11. Feb 2010 · letzter Beitrag vom 14. Aug 2010
Antwort Antwort
Seite 2 von 3     12 3      
Tyrael Y.

Registriert seit: 28. Jul 2003
Ort: Stuttgart
1.093 Beiträge
 
Delphi 2007 Professional
 
#11

Re: FormatDateTime liefert englische Wochentage

  Alt 11. Feb 2010, 14:14
Zitat von Luckie:
Nicht seine, sondern die von Delphi und da auch nur die, die er nicht behandelt und bis ganz oben durchschlagen.
Das sag ich doch.
Ok mal ganz genau meinen Satz ausgeschrieben.
"Die Fehlermeldungen in deinem Programm, die nicht von Windows oder dir selber stammen, sondern von Delphi selbst mitgeliefert werden, werden in deinem fall immer noch auf englisch erscheinen...."

Besser?
Levent Yildirim
Erzeugung von Icons aus Bildern:IconLev
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

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

Re: FormatDateTime liefert englische Wochentage

  Alt 11. Feb 2010, 14:17
Besser.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Hepdepaddel
Hepdepaddel

Registriert seit: 12. Dez 2005
Ort: Bremen
91 Beiträge
 
Delphi 2006 Enterprise
 
#13

Re: FormatDateTime liefert englische Wochentage

  Alt 11. Feb 2010, 14:33
Erst einmal besten Dank für die vielen Antworten, aufgrund der Mittagspause konnte ich die Diskussion nicht früher einfangen. Ich versuche mal, alle genannten Aspekte aufzugreifen

Es sind wie gesagt ja nur wenige Rechner - weniger als 0.1% der Kunden melden das Problem. Selbst mit Dunkelziffer dürfte der Anteil verschwindend gering sein.

Von daher kann ich mir nicht vorstellen, dass es an der Delphiversion liegt. Die ist zudem deutsch. Das scheint mir eher an einer exotischen Einstellung auf den betroffenen Rechnern zu liegen.

Auf den Testrechnern funktioniert alles rund, genau wie auf dem Entwicklungsrechner - wechsle ich dort die Einstellung von Deutsch auf Englisch, zeigt das Programm erwartungsgemäß andere Wochentagsbezeichnungen.

Threads nutze ich nicht, da wird die ganz normale FormatDateTime aufgerufen.

Ach ja: Das lange Datumsformat ist beispielsweise in einem Fall "TTTT, T.MMMM JJJJ" das ist auch auf meinem Win7-System die normale Einstellung. Hier klappt es.

Gruß

Hepdepaddel
  Mit Zitat antworten Zitat
Tyrael Y.

Registriert seit: 28. Jul 2003
Ort: Stuttgart
1.093 Beiträge
 
Delphi 2007 Professional
 
#14

Re: FormatDateTime liefert englische Wochentage

  Alt 11. Feb 2010, 14:49
Ich habe mir die Mühe gemacht und eben mal in den Delphi SourceCode geschaut, was Delphi macht.

Wie von mir vermutet nimmt Delphi die ResourcenStrings aus SysConst.pas und schreibt diese in einen festen globalen Array.
Dieser Array wird in FormateDateTime benutzt.

Das heißt, genau die Sprache muss erscheinen, die im SysConst.pas des Rechners steht mit dem das Programm kompiliert wird, ausser es findet doch eine Lokalisierung statt.

Ausser du nutzt doch den Weg den DeddyH beschrieben hat, ohne daß es dir bewusst ist, da du es woanders im Source setzt, dann werden die lokalen Betriebssystem-Einstellungen verwendet.

Ein dazwischen bzw. wie du sagst "exotische Einstellungen" kann es nach meiner Meinung nicht geben.
Levent Yildirim
Erzeugung von Icons aus Bildern:IconLev
  Mit Zitat antworten Zitat
Benutzerbild von Hepdepaddel
Hepdepaddel

Registriert seit: 12. Dez 2005
Ort: Bremen
91 Beiträge
 
Delphi 2006 Enterprise
 
#15

Re: FormatDateTime liefert englische Wochentage

  Alt 11. Feb 2010, 17:12
Vielen Dank für Deine Mühe und den Blick in den Quelltext! Ehrlich gesagt kann ich mit dem Weg, den DeddyH "beschrieben" hat, nicht viel anfangen, weil ich den nicht verstehe. Das ist ein Zitat aus der Online-Hilfe. Threads nutze ich da nicht und GetLocaleFormatSettings rufe ich in der ganzen Applikation nicht einmal auf.

Zitat:
Die erste Form von FormatDateTime ist nicht Thread-sicher, da die landesspezifischen Informationen der globalen Variablen verwendet werden. Der Thread-sicheren zweiten Form werden die landesspezifischen Informationen im Parameter FormatSettings übergeben. Bevor Sie diese Form von FormatDateTime aufrufen, müssen Sie die Informationen in den Parameter FormatSettings schreiben. Die landesspezifischen Standardinformationen können FormatSettings mit GetLocaleFormatSettings zugewiesen werden.

FormatDateTime wird nur mit zwei Parametern aufgerufen - nie mit dreien, die dann die FormatSettings beinhalten würden. Laut der Hilfe werden dann globale Lokalisierungsinformationen genutzt. Also wird in meinem Fall ja völlig zu Recht lokalisiert. Das widerspricht Deiner Quelltextanalyse, wonach nicht lokalisiert wird.

Zusammenfassend:

Wenn keine Lokalisierung statt fände, müsste es Deutsch sein, dann wäre das ein seltsamer Fehler.

Wenn eine Lokalisierung statt fände, müsste das auf einem deutschen Win7 mit den Einstellungen Deutsch sein, dann wäre das ein seltsamer Fehler.

Bleibt in beiden Fällen leider kein Ergebnis.

Gruß

Hepdepaddel
  Mit Zitat antworten Zitat
ConstantGardener

Registriert seit: 24. Jan 2006
Ort: Halberstadt
376 Beiträge
 
Delphi 10.4 Sydney
 
#16

Re: FormatDateTime liefert englische Wochentage

  Alt 11. Feb 2010, 20:16
Hallo Hepdepaddel,

leider kann ich dir auch keine Lösung für dein Problem nennen, ich kann nur bestätigen daß es disen Fehler gibt. Auch bei uns tritt bei eingien wenigen Kunden der beschriebene Effekt auf. Es werden englische Tagesbezeichnungen ausgegeben obwohl das Entwicklungssystem und der Zielrechner deutsche Versionen nutzen und auch alle Einstellungen auf deutsch stehen. Das ist schon etwas "strange", und vor allem so gut nachzuvollziehen.

Interessant ist, daß der Fehler bisher nur unter Windows 7 Systemen auftritt.

mfg

CG
Andreas Schachtner
  Mit Zitat antworten Zitat
Benutzerbild von Hepdepaddel
Hepdepaddel

Registriert seit: 12. Dez 2005
Ort: Bremen
91 Beiträge
 
Delphi 2006 Enterprise
 
#17

Re: FormatDateTime liefert englische Wochentage

  Alt 11. Feb 2010, 21:16
Herzlichen Dank für die Rückmeldung. Es tut schon einmal gut, zu wissen, dass ich nicht bekloppt bin

Win7 trifft auch bei mir zu. D2007, auch auf Win7 entwickelt. Was setzt Ihr ein?

Gruß

Hepdepaddel
  Mit Zitat antworten Zitat
ConstantGardener

Registriert seit: 24. Jan 2006
Ort: Halberstadt
376 Beiträge
 
Delphi 10.4 Sydney
 
#18

Re: FormatDateTime liefert englische Wochentage

  Alt 12. Feb 2010, 00:45
@Hepdepaddel

wir entwickeln auf XP Prof und D2006. Sind aber schon beim portieren auf D2010/Win7. Fehler tritt scheinbar nur auf Windows 7 auf.

Gruß CG
Andreas Schachtner
  Mit Zitat antworten Zitat
Blup

Registriert seit: 7. Aug 2008
Ort: Brandenburg
1.477 Beiträge
 
Delphi 12 Athens
 
#19

Re: FormatDateTime liefert englische Wochentage

  Alt 12. Feb 2010, 08:23
Bei einem vergleichbaren Problem hat es geholfen Windows komplett auf US-Englisch umzustellen und anschließend wieder auf Deutsch.
Zur Sicherheit dazwischen neu starten.
Vermutung:
Der PC wurde vom Hersteller orginal mit Windows7 US-Englisch installiert.
Die Lokalisierung erfolgte erst vor der Auslieferung über ein (nicht ganz perfektes) Script.
  Mit Zitat antworten Zitat
ConstantGardener

Registriert seit: 24. Jan 2006
Ort: Halberstadt
376 Beiträge
 
Delphi 10.4 Sydney
 
#20

Re: FormatDateTime liefert englische Wochentage

  Alt 12. Feb 2010, 11:51
@Blup

danke für den Tip werde ich meinen 2 Kunden mal versuchen nahezubringen. Ist aber trotzdem etwas verwunderlich, da Delphi die Arraywerte ja angeblich mit einkompiliert. Ich melde mich wenn es was bringt. Danke schonmal für den Hinweis.
Andreas Schachtner
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


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 20:43 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