Procédure IncHour dans DateUtils
Question
J'ai le bit suivant du code Delphi 7 pour incrémenter une valeur TDateTime d'une heure. Pour une raison quelconque, cela ne fonctionne pas.
StatusMemo.Lines.Add('prior '+DateTimeToStr(dtval));
IncHour(dtval,1); // add an hour for DST
StatusMemo.Lines.Add('after '+DateTimeToStr(dtval));
Contenu de StatusMemo après exécution du code:
prior 6/24/2009 5:35:40 AM
after 6/24/2009 5:35:40 AM
Il se comporte comme si IncHour ne fonctionnait pas. J'ai essayé d'utiliser IncMinute (dtval, 60) et j'ai obtenu le même résultat. Qu'est-ce qui me manque?
La solution
IncHour renvoie la valeur incrémentée, il ne met pas à jour la variable transmise.
Vous devez donc faire:
dtval := IncHour(dtval, 1);
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow