Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Сфера Microsoft » Программное обеспечение Windows » Прочие - Время работы компьютера

Ответить
Настройки темы
Прочие - Время работы компьютера

Аватара для Delirium

Ветеран


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

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


Изменения
Автор: Delirium
Дата: 26-05-2011
Описание: Добавлена обновленная версия Win приложения
Вложения
Тип файла: zip uptime.zip
(42.4 Kb, 80 просмотров)
Тип файла: zip uptime_win 1.1.zip
(41.1 Kb, 118 просмотров)
Сегодня решил отдохнуть и узнать,сколько времени моя машина включена. Различные методы типа systeminfo и прочее - это скучно
Через 15 минут родилось 2 программки -консольная и оконная, единственное из назначение - вывод времени работы компьютера Берем из архива файл (1.exe - консольное, 2.exe - оконное), кидаем их в папку \Windows и затем достаточно будет нажать Ctrl+R (Пуск-выполнить) - и вбить туда 1 или 2 Файлы можно переименовать, как душе угодно, тогда надо будет вводить созданное вами имя в окне выполнения.
В Windows 7 достаточно просто нажать клавишу Пуск или Win(на клавиатуре) и ввести имя программы.

P.S. Для работы нужен Framework 2.0, т.к. студия не дает компилировать под Net 1.0, а файла csc.exe framework 1.0 у меня в семерке нет.
Если кто захочет, могу дать исходники, перекомпилим и выложим, тогда будет работать у всех без установки фреймворка
Это сообщение посчитали полезным следующие участники:

Отправлено: 06:39, 01-03-2011

 

Ветеран


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

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


ferget, не может, но на мой взгляд, это довольно экзотичная функция:
если требуется реально контролировать uptime - виджет на экран или на рабочий стол обоями выкладывать (BGinfo)

Отправлено: 13:28, 27-05-2011 | #11



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


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

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


Изображения
Тип файла: jpg uptime_frm_bug2.jpg
(191.0 Kb, 12 просмотров)

Цитата Delirium:
Это кто вам такое сказал? При каждом наведении мышкой или открытии окна идет получение данных заново, а не прибавление секунд вручную. И я не могу понять, где что не работает, сейчас проверил, и при наведении и при открытии окна постоянно показывает увеличивающееся время. Приведите скрины или опишите подробно проблему.
У меня время уменьшается. Win XP SP2 MCE 2005 предустановленная на ноут + руссификация + SP3

Не важно, наводишь мышкой или переоткрываешь окно - время уменьшается.

Последний раз редактировалось nixuz, 29-05-2011 в 02:35.


Отправлено: 11:23, 28-05-2011 | #12


Новый участник


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

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


Изображения
Тип файла: jpg uptime_frm_bug1.jpg
(262.8 Kb, 5 просмотров)

Выявилась еще одна проблема. Сегодня я заметил, чир во всех версиях вашей программы время оказалось на много меньше, а сначала совпадало с системным аптаймом. При этом systeminfo и NHC - показывают корректно. Первый раз я скачал архив с программой 25 мая в 19:50 и запустил программу, соответственно, позже, и хотя на текущий момент прошло менее 3х суток, разница в показаниях составляет 5 дней, т.е. время уменьшается где-то в два раза быстрее, а значит есть какой-то отдельный счетчик у вашей программы, а не опрос системного времени.

Последний раз редактировалось nixuz, 29-05-2011 в 02:37.


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


Аватара для ferget

Разный


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

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


повтор
а можно сделать, так чтобы отсчет шел постоянно

Отправлено: 23:13, 29-05-2011 | #14


Аватара для Grabber2006

Ветеран


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

Профиль | Отправить 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


Новый участник


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

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


Цитата ferget:
а можно сделать, так чтобы отсчет шел постоянно »
В Notebook Hardware Control это релизовано.

Отправлено: 01:30, 31-05-2011 | #16


Новый участник


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

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


Цитата Grabber2006:
Ctrl + Alt + Del -> Диспетчер задач -> Быстродействие -> Время работы »
Скриншот в студию

Отправлено: 10:02, 31-05-2011 | #17


Аватара для ferget

Разный


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

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



Отправлено: 10:33, 31-05-2011 | #18


Аватара для Drongo

Будем жить, Маэстро...


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

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


ferget, ресурс диспетчера по видимому патченый, по умолчанию в ХР такого нет. Признавайтесь какой украшалкой пользуетесь?

-------
Правильная постановка вопроса свидетельствует о некотором знакомстве с делом.
3нание бывает двух видов. Мы сами знаем предмет — или же знаем, где найти о нём сведения.
[Quick Killer 3.0 Final [OSZone.net]] | [Quick Killer 3.0 Final [SafeZone.cc]] | [Парсер логов Gmer] | [Парсер логов AVZ]

http://tools.oszone.net/Drongo/Userbar/SafeZone_cc.gif


Отправлено: 14:05, 31-05-2011 | #19


Аватара для Grabber2006

Ветеран


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

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


Без украшалок в Win7 так.

Кстати, GetTickCount64 только под Vista, 7, 2008 есть. В XP чтобы нормальное время узнать (если больше 49 дней), то надо через HKEY_PERFORMANCE_DATA\System\System Up Time или NtQuerySystemInformation

Интересно:

NtQuerySystemInformation

заполняет такую структуру:

SYSTEM_TIME_OF_DAY_INFORMATION = packed record
BootTime: LARGE_INTEGER;
CurrentTime: LARGE_INTEGER;
TimeZoneBias: LARGE_INTEGER;
CurrentTimeZoneId: ULONG;
Reserved: ULONG;
end;

которое BootTime - это время загрузки в 100-нс начиная с 1601 года.

SystemTimeOfDayInformation = 3


Delphi:

Код: Выделить весь код
NtQuerySystemInformation(3, @s,sizeof(SYSTEM_TIME_OF_DAY_INFORMATION),nil);
n:=s.CurrentTime.QuadPart-s.BootTime.QuadPart;
n:=round(n/10000000);//сколько секунд работает система
Label1.Caption := inttostr(n);
Исходники для Lazarus и прога (до 49 дней)

Последний раз редактировалось Grabber2006, 31-05-2011 в 17:03.


Отправлено: 16:57, 31-05-2011 | #20



Компьютерный форум OSzone.net » Сфера Microsoft » Программное обеспечение Windows » Прочие - Время работы компьютера

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Разное - [решено] Время работы компьютера! SERViNT Microsoft Windows 2000/XP 6 01-03-2011 13:34
Router - умер во время работы forgtik Сетевое оборудование 24 21-12-2010 19:21
Ошибка - [решено] во время работы компьютера проскальзывает сообщение об ошибке. One THE darK Microsoft Windows 2000/XP 2 25-07-2010 18:46
Разное - Виснет во время работы PLATON Microsoft Windows 7 28 18-12-2009 11:44
Разное - [решено] Программа ограничивающая время работы компьютера Naiad Программное обеспечение Windows 5 11-12-2008 20:26




 
Переход