hi,
weil es doch mal den BUG mit Directory() > 4 GB gab hatte ich auf die Windows API mit WIN32_FIND_DATA() umgestellt.
nun stelle ich fest das die Uhrzeit von der FILETIME Struktur nach UTC, also -1 Std, angezeigt wird.
wir haben doch jetzt Winterzeit, also "original" und wir liegen in der Zeitzone GMT +1 ...
Frage : "was" muss ich "wie" umrechnen ?
p.s. funktioniert Directory() in der v2.x Release mit > 4 GB und "richtiger" Uhrzeit ?
( PDR 6377 soll in der 2.00.430 geschlossen sein )
WIN32_FIND_DATA() gibt UTC Zeit
Moderator: Moderatoren
- Werner_Bayern
- Der Entwickler von "Deep Thought"
- Beiträge: 2121
- Registriert: Sa, 30. Jan 2010 22:58
- Wohnort: Niederbayern
- Hat sich bedankt: 30 Mal
- Danksagung erhalten: 72 Mal
Re: WIN32_FIND_DATA() gibt UTC Zeit
yep!
- Dateianhänge
-
- Aufzeichnen2.PNG (2.25 KiB) 3790 mal betrachtet
-
- Aufzeichnen.PNG (6.94 KiB) 3790 mal betrachtet
es grüßt
Werner
<when the music is over, turn off the lights!>
Werner
<when the music is over, turn off the lights!>
- AUGE_OHR
- Marvin
- Beiträge: 12906
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 45 Mal
Re: WIN32_FIND_DATA() gibt UTC Zeit
ok, Danke.Werner_Bayern hat geschrieben:yep!
so nun, weil mir ja 1 Std "fehlte", das Gegenteil wenn man "SetFileTime" verwendet wird 1 Std. "zu viel" angezeigt das kann also dann doch nichts mehr mit "Daylight saving" zu tun haben, oder ?
In meiner TimeZone Applikation habe ja eine GMT -> LocalTime Konvertierung.
Code: Alles auswählen
SystemTimeToTzSpecificLocalTime( ::aTimeZone[ nCity ] [ I_DREI ], oSt, oLt )
Frage : wie ist es bei Emails, Webseiten oder FTP aus. wird da GMT oder UTC verwendet ?
gruss by OHR
Jimmy
Jimmy
- AUGE_OHR
- Marvin
- Beiträge: 12906
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 45 Mal
Re: WIN32_FIND_DATA() gibt UTC Zeit
hi,
ich habe mir nun mein TimeZone Modul genommen und wollte damit meine +- 1 Std. korrigieren.
dazu wir nun zuerst unterder "StandardName" ermittelt. damit kann man dann unternach dem entsprechenden Eintrag suchen.
jetzt müsste man mit der "TIME_ZONE_INFORMATION" Stuctur TZI verarbeiten ...
nun habe ich mich gefragt ob das alles notwendig ist ...wenn ich von der "LocalTime" die "SystemTime" abziehe komme ich doch genau auf die GMT Differenz, oder ?
p.s. Sommerzeit hab ich damit noch nicht ausprobiert ...
ich habe mir nun mein TimeZone Modul genommen und wollte damit meine +- 1 Std. korrigieren.
dazu wir nun zuerst unter
Code: Alles auswählen
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation
Code: Alles auswählen
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones
jetzt müsste man mit der "TIME_ZONE_INFORMATION" Stuctur TZI verarbeiten ...
nun habe ich mich gefragt ob das alles notwendig ist ...
Code: Alles auswählen
FUNCTION UTC2Local( cTIME )
LOCAL cRet := "00:00:00"
LOCAL nSec := HMS2Sec( cTIME ) // -> Sekunden
LOCAL cLoc := LocalTime() // 07.11.14 05:20:46:98
LOCAL cSys := SystemTime() // 07.11.14 04:20:46:98
LOCAL nLoc := HMS2Sec(SUBSTR(cLoc,10,8))
LOCAL nSys := HMS2Sec(SUBSTR(cSys,10,8))
//
// bislang nur bei gleichem Tag
//
IF SUBSTR(cLoc,1,8) = SUBSTR(cSys,1,8)
cRet := SEC2HMS(nSec-(nLoc-nSys))
ENDIF
RETURN cRet
p.s. Sommerzeit hab ich damit noch nicht ausprobiert ...
gruss by OHR
Jimmy
Jimmy