Vielen Dank funktioniert super!
Vermutlich doch nicht so ganz. Das
IncMilliSecond darf natürlich nur aufgerufen werden, wenn
remain > 0 ist. Andernfalls würden auch 5 Minuten dazu addiert, wenn gerade ein 5-Minuten-Interval erreicht ist.
Delphi-Quellcode:
var
dt: TDateTime;
interval: Int64;
remain: UInt64;
begin
dt := EncodeDateTime(2021, 9, 27, 12, 25, 1, 0);
interval := (5*SecsPerMin*MSecsPerSec);
remain := DateTimeToMilliseconds(dt) mod interval;
if remain > 0 then
dt := IncMilliSecond(dt, interval - remain);
end;