Hallo Günther
wenn ich dich richtig verstehe, dann möchtest du Delta: = jetzt - letzteAktion auch dann berechnen können, wenn der "GetTickCount Zähler" nach dem Zeitpunkt letzteAktion wieder bei 0 startete.
Wenn letzteAktion und jetzt weniger als High(Cardinal) Millisekunden (ca. 49 Tage) auseinanderliegen, dann könntest du es so tun:
Delphi-Quellcode:
function GetDeltaGTC( start : Cardinal ) : Cardinal;
var res, gtc : Cardinal;
begin
gtc := GetTickCount;
if ( gtc >= start ) then Result := gtc - start
else
begin
res := High(Cardinal)-start;
res := res + gtc + 1;
Result := res;
end;
end;