Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Аватара для Grabber2006

Ветеран


Сообщения: 5064
Благодарности: 1154

Профиль | Отправить PM | Цитировать


Какой-то велосипед изобретаете:

1. Ctrl + Alt + Del -> Диспетчер задач -> Быстродействие -> Время работы

2. Утилита от MS uptime.exe

3. В командной строке "net statistics server" (в первой строчке - время включения)

4. В командной строке "systeminfo"

5. На Delphi:

Код: Выделить весь код
function UpTime: string;
 const
   ticksperday: Integer    = 1000 * 60 * 60 * 24;
   ticksperhour: Integer   = 1000 * 60 * 60;
   ticksperminute: Integer = 1000 * 60;
   tickspersecond: Integer = 1000;
 var
   t:          Longword;
   d, h, m, s: Integer;
 begin
   t := GetTickCount;

   d := t div ticksperday;
   Dec(t, d * ticksperday);

   h := t div ticksperhour;
   Dec(t, h * ticksperhour);

   m := t div ticksperminute;
   Dec(t, m * ticksperminute);

   s := t div tickspersecond;

   Result := 'Uptime: ' + IntToStr(d) + ' Days ' + IntToStr(h) + ' Hours ' + IntToStr(m) +
     ' Minutes ' + IntToStr(s) + ' Seconds';
 end;


 procedure TForm1.Button1Click(Sender: TObject);
 begin
   label1.Caption := UpTime;
 end;
GetTickCount - штатная функция WinAPI - время в миллисекундах прошедшее от старта системы (через 50 дней обнуляется).
Чтобы избежать лимита юзайте GetTickCount64 (соответственно ULONGLONG, а не LongWord).
Это сообщение посчитали полезным следующие участники:

Отправлено: 00:11, 30-05-2011 | #15