Einzelnen Beitrag anzeigen

Michael II

Registriert seit: 1. Dez 2012
Ort: CH BE Eriswil
760 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Windows-Benutzer-Leerlaufzeit

  Alt 1. Dez 2017, 16:04
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;
Michael Gasser
  Mit Zitat antworten Zitat