Zitat von
Jackie1983:
Weil wenn ich die +120 abschneide und versuche ein DateTime draus zu machen,
bekomme ich einen Fehler.
weil es kein TDateTime-Wert ist?
TDateTime ist ja eine Delphi- oder besser Pascaleigene Angelegenheit (Tage seit Beginn der Pascal-Epoche)
dieses ist ein anderer Wert, aber warum es zur
exception kommt ... du hast ja bestimmt ein deutsches Windows und da ist das "," als Dezimalseperator definiert ... hier ist es der "." ... du mußt also bei der Umwandlung den Punkt beachten
Code:
00000000000.00000+000
^ Tage seit einem bestimmten Datum (weiß jetzt aber grad nicht seit welchem)
^ Anteil des letzen Tages (wie bei TDateTime)
^ Zeitzonenverschiebung in Minuten (UTC)
praktisch kannst du ...
- Zeitzone abschneiden, also ab "+" oder "-"
- StrToFloat (oder ähnliches, wegen dem Punkt ... z.B.
S := StringReplace(S, '.', DecimalSeparator, []); )
- die Differenz zwischen
WMI-Datetime und Delphi-TDateTime dazurechnen
- eventuell noch die Zeitzone dazurechnen (D := D + Zone/60/24)
- und Ergebnis kann nun als TDateTime angesehn werden