Autor Beitrag
Regan
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 2157
Erhaltene Danke: 72


Java (Eclipse), Python (Sublimetext 3)
BeitragVerfasst: Fr 29.02.08 21:37 
Moin,
als ich heute mal mein Programm zum Aktuallisieren der Systemzeit aufgerufen habe, traf mich der Schlag ganz schön hart. Die Systemzeit wird um eine Stunde falsch eingestellt, obwohl die Zeit im Label richtig angezeigt wird. Ich geb mal meinen Quelltext mit durch:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
var
  mySysTime:_SYSTEMTIME;
  tmpDateTime:TDateTime;
begin
{...}
  try
    IdTime1.Host := 'ptbtime1.ptb.de';
    tmpDateTime:=IdTime1.DateTime;
    Label1.Caption := TimeToStr(tmpDateTime);
    DateTimeToSystemTime(tmpDateTime, mySysTime);
    SetSystemTime(mySysTime);
  finally
    IdTime1.Disconnect;
  end;
{...}
end;

Wo liegt denn da der Fehler?

MfG
Regan
matze
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 4613
Erhaltene Danke: 24

XP home, prof
Delphi 2009 Prof,
BeitragVerfasst: Sa 01.03.08 14:39 
vermutlich liegt das daran, dass die Zeit GMT ist und wir in Deutschland ja um eine Stunde von der GMT Zeit abweichen.

EDIT: Ich würde dir sowieso die TidSNTP Komponente für sowas ans Herz legen. Sagen die Leute von Indy ja auch, dass man die eigentlich nehmen sollte.
Zur Synchronisation mit der System Uhr machst du dir eh zu viel Aufwand!
Da reicht ein IdTime1.SyncTime;

_________________
In the beginning was the word.
And the word was content-type: text/plain.
Regan Threadstarter
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 2157
Erhaltene Danke: 72


Java (Eclipse), Python (Sublimetext 3)
BeitragVerfasst: So 02.03.08 10:51 
Vielen Dank für deine Antwort.
user profile iconmatze hat folgendes geschrieben:
vermutlich liegt das daran, dass die Zeit GMT ist und wir in Deutschland ja um eine Stunde von der GMT Zeit abweichen.

Mir ist grad was aufgefallen: Ich hatte die Zeitzone auf London umgestellt. :oops: :autsch: . Da ist es wohl kaum verwunderlich, dass es nicht geht :wink: .
user profile iconmatze hat folgendes geschrieben:
EDIT: Ich würde dir sowieso die TidSNTP Komponente für sowas ans Herz legen. Sagen die Leute von Indy ja auch, dass man die eigentlich nehmen sollte.

Ich werde mir deine Variante aber mal anschauen.
user profile iconmatze hat folgendes geschrieben:
Zur Synchronisation mit der System Uhr machst du dir eh zu viel Aufwand!
Da reicht ein IdTime1.SyncTime;

Hab ich gemacht und funktioniert sehr gut.