Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Бесперебойники и отлов отключения  (Прочитано 10029 раз)
0 Пользователей и 8 Гостей смотрят эту тему.
David & Mark
Гость
« : 03-09-2004 05:52 » 

Ситуация:

Мне надо отловить отключение/перезагрузку компа.
Для этого я в программе отлавливаю ENDSESSION QUERYENDSESSION.
Но! При при выключении компа бесперебойником эти сообщения не посылаются. Можно ли всё-таки отловить отключения перехватывая IRP_MJ_POWER и где его ловить(фильтр чего писать?)
Записан
Серж
Гость
« Ответ #1 : 03-09-2004 07:43 » 

David & Mark,
лучше не дожидаться отключения компьютера бесперебойниками, а реагировать на переход их на батарею. Многие интеллектуальные UPS позволяют запустить скрипт пользователя. Из него можно послать сообщение пользовательской программе, которая гладко закроется. Мы в своей системе использовали UPS еще более умный (и конечно более дорогой), который сами опрашивали из своей программы и определяли его состояние.
Записан
David & Mark
Гость
« Ответ #2 : 03-09-2004 09:54 » 

проблема в том, что UPS дешёвый и не поддерживает никаких скриптов.
RS 500 APC
Записан
Серж
Гость
« Ответ #3 : 03-09-2004 11:14 » 

David & Mark,
по-моему этот UPS через шнурок подключается к Com-порту, USB или Ethernet, в зависимости от реализации, и использует штатную программу PowerShute для извещения. А WM_ENDSESSION и WM_QUERYENDSESSION возникает, когда выключение компьютера или перезагрузку инициирует пользователь или какя-нибудь программа.
Записан
David & Mark
Гость
« Ответ #4 : 03-09-2004 12:28 » 

PowerShute. Точно. Как с ней работать? Скриптов в ней нет.

Цитата

А WM_ENDSESSION и WM_QUERYENDSESSION возникает, когда выключение компьютера или перезагрузку инициирует пользователь или какя-нибудь программа


PowerShute ничего не  посылает.
Записан
Серж
Гость
« Ответ #5 : 03-09-2004 12:47 » 

Программа достаточно бестолковая, но в документации к ней точно где-то есть возможность запускать по определенным возникающим событиям UPS собственные программы. Поищите. Моя работа с этой программой закончилась после того, как я ее установил, подключил UPS к Com-порту и система распознала UPS, как большую мышь  Отлично
Записан
dachny
Гость
« Ответ #6 : 04-03-2005 10:39 » 

Какой в задницу поверСюит че лень прочитать доку на PSDK
ключевые слова

IOCTL_BATTERY_QUERY_INFORMATION
IOCTL_BATTERY_QUERY_STATUS
IOCTL_BATTERY_QUERY_TAG
IOCTL_BATTERY_SET_INFORMATION
Записан
Гром
Птычк. Тьфу, птычник... Вот!
Готовлюсь к пенсии

il
Offline Offline
Пол: Мужской
Бодрый птах


« Ответ #7 : 04-03-2005 11:16 » 

daxhny - помменьше гонора, побольше нормального разговора.
Записан

А птичку нашу прошу не обижать!!!
daxhny
Гость
« Ответ #8 : 07-03-2005 06:13 » 

Принято
>>>daxhny - помменьше гонора, побольше нормального разговора
Записан
Гром
Птычк. Тьфу, птычник... Вот!
Готовлюсь к пенсии

il
Offline Offline
Пол: Мужской
Бодрый птах


« Ответ #9 : 08-03-2005 15:21 » new

Ага
Записан

А птичку нашу прошу не обижать!!!
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines