![]() |
Delphi-Version: 2007
Fehler in EncodeDateTime für 24 Uhr
Hallo, Delphi-Praktiker,
die Dokumentation schreibt, daß bei EncodeDateTime für Stunde = 24 dann Minute, Sekunde und Millisekunde Null sein müssen, das ist auch plausibel. Mein Problem: Diese Konstellation führt zu einem Laufzeitfehler: "... Exception der Klasse EConvertError mit der Meldung '2011.9.20 24:0:0,0' ist keine gültige Datums- und Uhrzeitangabe ...": Ist das nur bei mir oder nur in dieser Delphi-Version (2010, nicht 2007) so? Mit besten Grüßen Klaus-Peter |
AW: Fehler in EncodeDateTime für 24 Uhr
Hast du auf einer Digitaluhr schon mal 24:00:00 gesehen ?
|
AW: Fehler in EncodeDateTime für 24 Uhr
Hallo, Guiness,
die Frage bezog sich eher nicht auf meine Digitaluhr. Ich bekomme Datum/Uhrzeit geliefert und möchte es in TDateTime umsetzen. Laut Delphi-Doku soll 24:00:00 ja auch möglich sein ! (URL="http://docwiki.embarcadero.com/VCL/de/DateUtils.EncodeDateTime"][/URL] Klaus-Peter |
AW: Fehler in EncodeDateTime für 24 Uhr
Auf welche Doku beziehst du dich denn?
Meine D2010-OH meint genau das Selbe wie ![]() [edit] Unverlinkten Link übersehn ... mal sehn ... Hmmm, ![]() ![]()
Delphi-Quellcode:
Also nichts mit 24:00:00:000.
function TryEncodeTime(Hour, Min, Sec, MSec: Word; out Time: TDateTime): Boolean;
begin Result := False; if (Hour < HoursPerDay) and (Min < MinsPerHour) and (Sec < SecsPerMin) and (MSec < MSecsPerSec) then ... Dann stimmt wohl die OH nicht mehr mit dem Code überein. |
AW: Fehler in EncodeDateTime für 24 Uhr
Das ist ein Fehler in der Dokumentation. Ein schneller Blick in den Quelltext zeigt, dass das explizit abgefangen wird:
Delphi-Quellcode:
// EDIT:
if (Hour < HoursPerDay) and (Min < MinsPerHour) and (Sec < SecsPerMin) and (MSec < MSecsPerSec) then
// wobei HoursPerDay natürlich 24 ist, daher geht nur bis 23 Das müsste also <= HoursPerDay sein, damit das geht. Das wirst du also schnell selbst berechnen müssen. @himitsu: Er hat den Link ja jetzt auch angegeben: Zitat:
|
AW: Fehler in EncodeDateTime für 24 Uhr
Jupp, und in Delphi 7 war das auch bereits so ... da stimmt die OH wohl schon eine ganze Weile nicht mehr.
|
AW: Fehler in EncodeDateTime für 24 Uhr
Tja, so isses dann halt mal.
Vielen Dank, Klaus-Peter |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:35 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