Home » Tipps & Tricks » System » Systemeinstellungen » Windows-Uptime berechnen
Windows-Uptime berechnen
Dieser Artikel zeigt, wie man die Zeit, die seit dem letzten Windows-Start vergangen ist, ermitteln kann.Sie basiert auf dem Aufruf von GetTickCount, die die Millisekunden seit dem letzten Windows-Start zählt. Aufgrund des beschränkten Wertebereichs des Typs DWORD läuft die Funktion nach 49,7 Tagen über, d.h. sie beginnt wieder bei 0.
procedure GetWindowsUpTime(var ADay, AHours, AMinutes, ASeconds: Integer); const OneDay : Integer = 1000 * 60 * 60 * 24; OneHour : Integer = 1000 * 60 * 60; OneMinutes : Integer = 1000 * 60; OneSecond : Integer = 1000; var Start : Integer; d, h, m, s: Integer; begin Start:=GetTickCount; ADay:=Start div OneDay; //Tage d:=Start mod OneDay; AHours:=d div OneHour; //Stunden h:=d mod OneHour; AMinutes:=h div OneMinutes; //Minuten s:=h mod OneMinutes; ASeconds:=s div OneSecond; //Sekunden end;
Der obigen Funktion müssen vier Referenzparameter übergeben werden. Die Namen sollten für sich sprechen.
procedure TForm1.Button1Click(Sender: TObject); var Tage, Stunden, Minuten, Sekunden: Integer; begin GetWindowsUpTime(Tage, Stunden, Minuten, Sekunden); Caption:=Format('%d Tage %d Stunden %d Minuten %d Sekunden', [Tage, Stunden, Minuten, Sekunden]); end;