Frage zu Zeitdarstellung im Explorer



  • Ich habe hier eine Datei. Die Erstellungszeit wird im Explorer unter WinXP, WinVista, Win7 und Win8.1 unterschiedlich angezeigt

    WinXP: 28.06.2013, ‏‎13:55:57
    WinVista: 28.06.2013, ‏‎13:55:57
    Win7: 28.06.2013, ‏‎14:55:57
    Win8.1: 28.06.2013, ‏‎14:55:57

    Wenn ich mit meinem Programm das Erstellungszeit der Datei mittels der Struktur WIN32_FIND_DATA ermittele und mit FileTimeToLocalFileTime umwandele wird mir unter allen Betriebssystemen folgendes angezeigt: 28.06.2013, ‏‎13:55:57. Woher kommt die Differenz unter Win7 und Win8.1?



  • FileTimeToLocalFileTime konvertiert die gespeicherte UTC Zeit in die AKTUELLE Zeitone. Daber wird die Sommerzeiteinstellung benutzt, die JETZT gültig ist. Nicht die, welche am angegebenen Zeitstempel gültig war.

    Der Explorer von Windows 7 und Windows 8.x benutzt wohl daher nicht mehr diese Funktion sondern wandelt die UTC-Zeit mit einer besseren Funktion um.

    mfg Martin



  • Ja, habs auch schon rausgefunden, Win7 + Win8.1 benutzen "SystemTimeToTzSpecificLocalTime" und "TzSpecificLocalTimeToSystemTime"


Anmelden zum Antworten