AGB  ·  Datenschutz  ·  Impressum  







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

Probs mit Datum- / Zeitfunktionen

Ein Thema von TERWI · begonnen am 15. Sep 2009 · letzter Beitrag vom 17. Sep 2009
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von TERWI
TERWI

Registriert seit: 29. Mär 2008
Ort: D-49626
381 Beiträge
 
Delphi 11 Alexandria
 
#11

Re: Probs mit Datum- / Zeitfunktionen

  Alt 16. Sep 2009, 17:03
... hab ich ja schon einige Male gemacht.
Ich konnte sehen, das in einem Zeitraum von ges. etwa 3 Stunden die Zeit plötzlich 13 Minuten vor ging.
Habe das Prog beendet und noch ein paar Log's zusätzlich reingeschrieben.
Nur mal Zeit auslesen mit Time oder GetTime (das gleiche !?) oder Now zerlegt...
Blieb bei dem Versatz. Hab den Rechner neu gestartet und wieder alles gut.
Selbe Spiel noch mal - keine Probleme.
Aufnahmen programiert - ein Tag gut, anderer Tag 2. Aufnahme zu spät, usw.
Ich las das noch mal loggen (aber erst am WE hab ich wieder Zeit) und poste das hier mal.
Ementare Auszüge vom Prog schreib ich dann auch dazu.

Na klar kann man mal die eine oder andere Bohle vorm (im ?) Hirn haben und es geht einfach nicht weiter.
Vor allem wenn man stunden-/tagelang wie besessen davorsitzt ' ... muss doch gehen ?!'.
Da hab ich auch kein Problem, wenn mich da einer wegen eines eklatanten Denk-/Tippfehler's anfrotzelt.
Ich seh/find da aber absolut nix...
Und A) hab ich das auch schon mal tagelang zum Kopf frei machen an die Seite gelegt
und B) funktioniert es ja prinzipiell zu einem sehr hohen Prozentsatz
was mich nicht glauben lassen will, dass ein grundsätzlicher Denk-/Tipp-Fehler drin ist.

Wie Eingangs schon angesprochen, vermute ich irgendwas anderes im Rechner, was die Zeit in unregelmäßigen Abständen mit unregelmäßigem Versatz verstellt.
Aber was soll/kann das sein ? Maschine sollte (ist) sauber und es wird auch nix 'ungewöhnliches gestartet.
Na gut, man soll niemals nie sagen...

Deswegen die Frage, woher Delphi denn eigentlich seine Zeit bezieht (BIOS oder WinDoof).
Ich hatte die DateTime-Funktionen selbst eigentlich nicht in Verdacht !
Vielleicht ist das ja ein Board-Prob ? Kommt eh am WE ein neues rein ....
Oder Temeratur irgendwie/-wo ?
Oder....
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#12

Re: Probs mit Datum- / Zeitfunktionen

  Alt 16. Sep 2009, 17:39
Hallo TERWI,

da Du immer auf dem boot herum reitest, riecht das sehr nach dem Timertick, der läuft ja nach 2 Tagen über(?).

Soweit ich weiß kommst Du unter Windows nicht mehr an die BIOS-Zeit heran (DOS läßt grüßen!) Da gab es in den letzten 6 Monaten auch mal einen thread zu.

Du holst Dir nicht zufälliger Weise die Zeit von einem Zeitserver??

Gruß
K-H
  Mit Zitat antworten Zitat
Benutzerbild von TERWI
TERWI

Registriert seit: 29. Mär 2008
Ort: D-49626
381 Beiträge
 
Delphi 11 Alexandria
 
#13

Re: Probs mit Datum- / Zeitfunktionen

  Alt 16. Sep 2009, 18:55
Zitat:
Du holst Dir nicht zufälliger Weise die Zeit von einem Zeitserver??
Aaaaarrgghhh ! Oder auch a la Donald Duck & Co.: Kreisch !

Daran habe ich ehrlich gesagt überhaupt nicht dran gedacht.
time.windows.com ist eingestellt und angehakt....

Das kann - muss aber nicht - die / eine Fehlerquelle sein.
Halte ich aber für möglich, da im Fenster 'Eigenschaften von Datum und Uhrzeit' die nächste Aktualisierung erst morgen um 18:04 angekündigt ist.
Das erklärt zumindestens, das meine 'Kurzzeitversuche' immer klappen - nur wenn's denn mal länger dauert ...

Stellt sich nur die Frage, warum die Zeit falsch eingestellt wird ?
Ich habe dem Haken auf jedenfall schon mal entfernt und werde das am WE mal wieder ausgiebig testen.

K-H... ein MegaDank an dich
Trotzdem abwarten und Tee ? trinken.

Sonst noch jemand ne Idee ?
  Mit Zitat antworten Zitat
Benutzerbild von TERWI
TERWI

Registriert seit: 29. Mär 2008
Ort: D-49626
381 Beiträge
 
Delphi 11 Alexandria
 
#14

Re: Probs mit Datum- / Zeitfunktionen

  Alt 16. Sep 2009, 19:08
Ergänzung @K-H
Zitat:
da Du immer auf dem boot herum reitest, riecht das sehr nach dem Timertick, der läuft ja nach 2 Tagen über(?).
... bisher bin ich ein einziges Mal (und das vergesse ich nicht) darauf hereingefallen und benutze den Tickcount nur für (sehr) kurze Prüfungen in Schleifen als KO-Abbruchkriterium für TimeOut's.
Eine sicherlich bei vielen bekannte und bei unerklärlichen Fehlern oft angewendete Methode nach dem uralten Spruch schon aus DOS-Zeiten:
Zitat:
(Re-) Boot tut gut
8)

Zitat:
Soweit ich weiß kommst Du unter Windows nicht mehr an die BIOS-Zeit heran (DOS läßt grüßen!) Da gab es in den letzten 6 Monaten auch mal einen thread zu.
Mehr oder weniger korrekt. DenThread habe ich noch nicht gesucht / bei Zeiten gefunden.
Nochmal:
Zitat:
Deswegen die Frage, woher Delphi denn eigentlich seine Zeit bezieht (BIOS oder WinDoof).
Welcher Delphi-/WinDoof-Insider weiß denn das ?
(genau)
  Mit Zitat antworten Zitat
Benutzerbild von sx2008
sx2008

Registriert seit: 15. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#15

Re: Probs mit Datum- / Zeitfunktionen

  Alt 17. Sep 2009, 01:16
Zitat von TERWI:
Deswegen die Frage, woher Delphi denn eigentlich seine Zeit bezieht (BIOS oder WinDoof).
Date, Time und New beziehen ihre Werte über die API-Funktion GetLocalTime.
GetLocalTime stützt sich wiederum auf GetSystemTime.
Die Systemzeit von GetSystemTime wird anfangs über die Real Time Clock im BIOS initialisiert
und wird dann IHMO mit Hilfe von GetTickCount weitergerechnet.
Die Systemzeit kann von der RTC abweichen (über die Funktion SetSystemTimeAdjustment).

Wenn du den Verdacht hast, dass da irgendetwas nicht stimmt, dann schreib dir doch ein Testprogramm.
Beim Programmstart die aktuelle Zeit über New() holen und merken.
Das Gleiche mit GetTickCount ausführen.
Einen Timer starten, der jede Sekunde Folgendes tut:
Delphi-Quellcode:
MillisekundenSeitStart1 := (now()-startzeit) * MSecsPerDay;
MillisekundenSeitStart2 := GetTickCount()-startticks;

if Abs(MillisekundenSeitStart2-MillisekundenSeitStart1) > 100 then
begin
  // Meldung in Memo schreiben, dass Zeitabweichung festgestellt wurde
  // und wie gross diese ist
end;
Eine Manipulation an der Systemzeit, der Wechsel von Sommer- zu Winterzeit oder Änderung
der Zeitzone sollte sofort eine Meldung hervorrufen.
Nach 49.7 Tagen gibt es in GetTickCount einen Überlauf und damit ebenfalls eine Meldung.
fork me on Github
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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:14 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