Заметки · 16.05.2025

Сколько времени в строю

Продолжаю делиться обрывками кода из своих проектов на IDE Lazarus. Сегодня на повестке вечера функция для получения времени работы компьютера:

uses ..., Windows, SysUtils;

function GetUptime: string;
var
  TickCount: UInt64;
  Seconds, Minutes, Hours, Days: UInt64;
begin
  TickCount := GetTickCount64;
  Seconds := TickCount div 1000;
  Minutes := Seconds div 60;
  Hours := Minutes div 60;
  Days := Hours div 24;
  Result := Format('%d.%2.2d:%2.2d:%2.2d', [Days, Hours mod 24, Minutes mod 60, Seconds mod 60]);
end;

Функция GetUptime возвращает строку вида день.часы:минуты:секунды. Как применять решайте сами.