Модераторы: feodorv, GremlinProg, xvr, Fixin
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Получение ОБЩЕГО аптайма системы 
V
    Опции темы
yeputons
Дата 30.4.2009, 21:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 77
Регистрация: 1.4.2009
Где: Санкт-Петербург

Репутация: 1
Всего: 5



Хотелось бы научиться получать общий аптайм системы в секундах (как в EVEREST'е). В сторону WMI и гугла немного копал. Может у кого-то есть какие-то конкретные предложения?
PM MAIL ICQ Skype   Вверх
Vaulter
Дата 30.4.2009, 22:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1724
Регистрация: 30.12.2002
Где: бункер

Репутация: нет
Всего: 22



хороший вопрос  smile 


--------------------
PM MAIL WWW ICQ   Вверх
GremlinProg
Дата 30.4.2009, 22:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2706
Регистрация: 9.8.2005
Где: Тюмень

Репутация: 99
Всего: 106



Цитата

GetTickCount Function
Retrieves the number of milliseconds that have elapsed since the system was started, up to 49.7 days.

Цитата

The elapsed time is stored as a DWORD value. Therefore, the time will wrap around to zero if the system is run continuously for 49.7 days. To avoid this problem, use GetTickCount64. Otherwise, check for an overflow condition when comparing times.

поделишь на 1000, получишь секунды


--------------------
"Гений всегда разумнее, чем умнее. Ум — это машина, разум — водитель этой машины."
PM WWW ICQ   Вверх
yeputons
Дата 7.5.2009, 11:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 77
Регистрация: 1.4.2009
Где: Санкт-Петербург

Репутация: 1
Всего: 5



GremlinProg, не то. Функция, конечно, полезная, спасибо, но она выдает аптайм текущего интервала работы. Т.е., если я включил компьютер 2 часа назад, она выдаст 7200000. А мне надо суммарный аптайм системы с момента установки/первого запуска.
PM MAIL ICQ Skype   Вверх
xvr
Дата 7.5.2009, 13:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 40
Всего: 223



Цитата(yeputons @ 7.5.2009,  11:33)
А мне надо суммарный аптайм системы с момента установки/первого запуска.

Ого  smile Сдается мне, что нету такого. Написать свой сервис, что бы считал uptime и складывал на диск.

PM MAIL   Вверх
azesmcar
Дата 7.5.2009, 13:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 5
Всего: 211



Цитата(yeputons @  7.5.2009,  11:33 Найти цитируемый пост)
GremlinProg, не то. Функция, конечно, полезная, спасибо, но она выдает аптайм текущего интервала работы. Т.е., если я включил компьютер 2 часа назад, она выдаст 7200000. А мне надо суммарный аптайм системы с момента установки/первого запуска. 

Нельзя взять дату создания папки виндоуз и подсчитать разницу между нынешней датой?
PM   Вверх
GremlinProg
Дата 7.5.2009, 14:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2706
Регистрация: 9.8.2005
Где: Тюмень

Репутация: 99
Всего: 106



выполните в консоле команду systeminfo
и смотрите поле "Дата установки", это и есть общий аптайм оси

у меня, к примеру, эти цифры такие:
Дата установки: 07.02.2009, 19:12:30
Windows создан: 8 февраля 2009 г., 0:51:37

т.е. разница очевидна
скорее всего, нужно смотреть всетаки в сторону WMI

Добавлено через 2 минуты и 13 секунд
Цитата(GremlinProg @  7.5.2009,  16:13 Найти цитируемый пост)
это и есть общий аптайм оси

в смысле, дата установки, не аптайм )),
но похоже, это максимум на что можно расчитывать


--------------------
"Гений всегда разумнее, чем умнее. Ум — это машина, разум — водитель этой машины."
PM WWW ICQ   Вверх
yeputons
Дата 7.5.2009, 22:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 77
Регистрация: 1.4.2009
Где: Санкт-Петербург

Репутация: 1
Всего: 5



Цитата(GremlinProg @  7.5.2009,  14:13 Найти цитируемый пост)

но похоже, это максимум на что можно расчитывать 

а вот и неправда. smile помог сам Everest: в нем есть строчка вида "Данные по системному журналу событий". Так вот, есть возможность читать этот журнал средствами WinAPI (а в .NET это уже есть). А в нём бывают события с кодами 6005/6009 - вкл./выкл. логгера, которые работает всё время работы системы после установки. Т.о. можно считать такие события и руками посчитать требуемое время. Я у себя посчитал - сошлось с Everest'ом. Так что всем спасибо, проблему считаю решённой.
PM MAIL ICQ Skype   Вверх
586
Дата 8.5.2009, 02:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2243
Регистрация: 8.5.2006

Репутация: 39
Всего: 146



В реестре Windows есть ключ, где указывается дата установки. http://forum.vingrad.ru/forum/topic-250488.html

Это сообщение отредактировал(а) 586 - 8.5.2009, 02:15
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Системное программирование и WinAPI"
Fixin
GremlinProg
xvr
feodorv
  • Большое количество информации и примеров с использованием функций WinAPI можно найти в MSDN
  • Описание сообщений, уведомлений и примеров с использованием компонент WinAPI (BUTTON, EDIT, STATIC, и т.п.), можно найти в MSDN Control Library
  • Непосредственно, перед созданием новой темы, проверьте заголовок и удостоверьтесь, что он отражает суть обсуждения.
  • После заполнения поля "Название темы", обратите внимание на наличие и содержание панели "А здесь смотрели?", возможно Ваш вопрос уже был решен.
  • Приводите часть кода, в которой предположительно находится проблема или ошибка.
  • Если указываете код, пользуйтесь тегами [code][/code], или их кнопочными аналогами.
  • Если вопрос решен, воспользуйтесь соответствующей ссылкой, расположенной напротив названия темы.
  • Один топик - один вопрос!
  • Перед тем как создать тему - прочтите это .

На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы .


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема »


 




[ Время генерации скрипта: 0.0499 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.