// Hiermit kann man ermitteln, wann der Rechner eingeschaltet wurde,
// bzw. wie lange er bereits läuft. Je nachdem, wie stabil der Rechner läuft,
// kann es Ungenauigkeiten von mehreren Sekunden geben.
// Getestet mit D4 unter XP
function Laufzeit: string;
const
tph = MSecsPerDay div 24;
tpm = tph div 60;
var
t: cardinal;
d, h, m, s: Integer;
begin
t := GetTickCount;
d := t div MSecsPerDay;
Dec(t, d * MSecsPerDay);
h := t div tph;
Dec(t, h * tph);
m := t div tpm;
Dec(t, m * tpm);
s := t div 1000;
if d > 0 then Result := IntToStr(d) + ' Tag(e), '
else Result := '';
if (d > 0) or (h > 0) then
Result := Result + IntToStr(h) + ' Stunde(n), ';
if (d > 0) or (h > 0) or (m > 0) then
Result := Result + IntToStr(m) + ' Minute(n), ';
Result := Result + IntToStr(s) + ' Sekunde(n)';
end;
function einschaltzeit: string;
begin
Result := formatdatetime('h:mm', now - (GetTickCount / 86400000));
end;
// Beispielaufruf
procedure TForm1.Button12Click(Sender: TObject);
begin
showmessage('Eingeschaltet: ' + Einschaltzeit + ' Uhr');
showmessage('Laufzeit: ' + Laufzeit);
end;