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

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Как выключить компьютер  (Прочитано 8564 раз)
0 Пользователей и 1 Гость смотрят эту тему.
anatolich
Гость
« : 26-12-2006 07:52 » 

Написал драйвер sys для своей PCI платы. Работает отлично.
Спасибо форумчанам.
Теперь если приложение не запускаю - комп нормально выключается
Если дернул драйвер, то при выключении компа диски гасятся, видео - все
кроме PCI шины.
Толи я какой- то IRP системный не обрабатываю?
Подскажите...
Записан
Ochkarik
Модератор

ru
Offline Offline
Пол: Мужской

« Ответ #1 : 26-12-2006 13:39 » 

IRP_MJ_POWER глянь внимательно...
и IRP_MN_QUERY_STOP_DEVICE/IRP_MN_STOP_DEVICE вроде бы...
и IRP_MN_QUERY_CAPABILITIES мейби...
кстати что значит "кроме шины"? на ней питалово остается? так... оно помоему и должно некоторое... если не путаю... иначе как модемы могут комп по сигнлу будить?))
и еще... если все так как вы пишете - посмотрите что при открытии драйвера делаете... может ресурсы какие не освободили? хотя если честно - больше похоже на баги)
« Последнее редактирование: 26-12-2006 13:43 от Ochkarik » Записан

RTFM уже хоть раз наконец!  RTFM :[ ну или хотя бы STFW...
anatolich
Гость
« Ответ #2 : 26-12-2006 14:51 » 

Рад вновь встретить вас на форуме
С наступающим!!!
Не придумаю как технологичней трассировать.
Все случается когда уже ХР сохраняет параметры при выключении
и в этот момент повисает.
В приложении все работает нормально, даже с 6-ю платами
При освобождении хэндлов, в дебагере вижу, что все clear u close
выполнились. А что делается в моем PowerDispatch или ShutdownDispatch
не вижу конечно.
Может повыкидывать все это...
Записан
Ochkarik
Модератор

ru
Offline Offline
Пол: Мужской

« Ответ #3 : 26-12-2006 15:30 » 

эээ... одна возможная бага... прерывания использовали? может непогашено/незамаскировано  осталось?)
PowerDispatch я брал от нумеги и помоему ничего там не исправлял...

для отладки попробуйте не выключать комп а принудительно удалить драйвер из дерева устройств - какая реакция? ну и старт-стоп там же в дереве.
« Последнее редактирование: 26-12-2006 15:31 от Ochkarik » Записан

RTFM уже хоть раз наконец!  RTFM :[ ну или хотя бы STFW...
anatolich
Гость
« Ответ #4 : 22-01-2007 08:59 » 

Здравствуйте Ochkarik,
по вашему совету поиграл с птичками в Compuware DriverStudio.
Так как наше железо не поддерживает управление по питанию,
то поубирал некоторые переключатели в Compuware DriverStudio.
Хоть и не осталось ясного понимания, зато работает. Спасибо
Записан
Ochkarik
Модератор

ru
Offline Offline
Пол: Мужской

« Ответ #5 : 22-01-2007 12:32 » new

тогда скорее всего это были флаги в AddDevice:
DeviceObject->Flags |= DO_POWER_PAGABLE;
(или  DO_POWER_INRUSH.)
у меня первый стоит. в DDK про них написано.
Записан

RTFM уже хоть раз наконец!  RTFM :[ ну или хотя бы STFW...
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines