IncHour procedure in DateUtils
Domanda
Ho il seguente bit di codice Delphi 7 per incrementare un valore di TDateTime di un'ora. Per qualche motivo non funziona.
StatusMemo.Lines.Add('prior '+DateTimeToStr(dtval));
IncHour(dtval,1); // add an hour for DST
StatusMemo.Lines.Add('after '+DateTimeToStr(dtval));
Contenuti di StatusMemo dopo l'esecuzione del codice:
prior 6/24/2009 5:35:40 AM
after 6/24/2009 5:35:40 AM
Si comporta come IncHour non funziona. Ho provato a utilizzare IncMinute (dtval, 60) e ho ottenuto lo stesso risultato. Cosa mi sto perdendo?
Soluzione
IncHour restituisce il valore incrementato, non aggiorna la variabile passata.
Quindi devi fare:
dtval := IncHour(dtval, 1);
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow