AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Algorithmen, Datenstrukturen und Klassendesign Irritationen bei SetLastWriteTime/ GetLastWriteTime
Thema durchsuchen
Ansicht
Themen-Optionen

Irritationen bei SetLastWriteTime/ GetLastWriteTime

Ein Thema von bcvs · begonnen am 24. Mär 2020 · letzter Beitrag vom 26. Mär 2020
 
Delphi.Narium

Registriert seit: 27. Nov 2017
2.598 Beiträge
 
Delphi 7 Professional
 
#12

AW: Irritationen bei SetLastWriteTime/ GetLastWriteTime

  Alt 25. Mär 2020, 11:59
@himitsu
Ich bin auch nicht davon ausgegangen, dass der Zeittyp von Delphi irgendeine Zeitzoneninfo enthält.

Now ist die Zeit, die gerade auf dem Rechner ist. Wenn ich die Uhr verstelle ist's halt ein anderer Wert. Das Problem, um das es hier geht, wird also bestehen bleiben.

StrToDateTime macht aus 'ner Zeichenfolge ja nix weiter als einen Wert, der mehr oder weniger von Now abweicht.

Die "Umwandlung", "Umrechnung", "wie auch immer" passiert also nicht innerhalb von Delphi, sondern "irgendwo auf dem Weg zwischen Delphi und dem Filesystem". Da gibt es irgendwo eine "BlackBox", die für die Differenz sorgt.

Und, so wie Du vermutest, gehe ich davon aus, dass irgendwo in der Windows-API eine entsprechende Zeitzonenkonvertierung durchgeführt wird.

@bcvs
Das klingt für mich aber eher befremdlich.
Demnach ist es, bei gesetztem Schalter "Automatisch an Sommerzeit anpassen", nicht möglich, die UTC-Zeit zu setzen. Bzw.: Man muss im Programm prüfen, ob dieser Schalter gesetzt ist und dann die Differenz zwischen Normalzeit und Sommerzeit berücksichtigen (und das bitteschön unter Beachtung aller Zeitzonen und deren ggfls. existierenden Sommerzeitregelungen) oder eben bei nicht gesetztem Schalter nicht berücksichtigen.
Da mag bei einem nur lokal verwendeten Programm ja eventuell noch angehen, aber bei weltweit eingesetzter Software könnte das dann schon etwas aufwändiger werden.

Das sieht mir insgesamt jetzt aber eher nach 'nem Bug als nach 'nem Feature aus (und der liegt in einem von Delphi aus nicht beeinflussbaren Bereich).

Wenn ich die UTC-Zeit setze, erwarte ich eigentlich, dass diese die Zeit erhält, die ich angebe und nicht eine Zeit, die unter Beachtung diverser Schalter und wie auch immer definierter Zeitdifferenz höchstwahrscheinlich zu erwarten wäre

Oder anders formuliert:

Wenn ich die UTC-Zeit auf 10:00 Uhr setze, erwarte ich, dass sie beim anschließenden Lesen auch 10:00 Uhr ist.
  Mit Zitat antworten Zitat
 


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 06:21 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