![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 30.05.2008
Сообщений: 22
|
![]()
Подскажите, пожалуйста, адекватный способ контроля кнопки питания компьютера. Заранее спасибо!
|
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]()
этим ОС промышляет а не программы.
а вообще всмысле контроль то? Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 30.05.2008
Сообщений: 22
|
![]()
Как раз и нужно у ОСи отобрать право единолично распоряжаться этой кнопочкой. Нужно блокировать и разблокировать реакцию ОСи на кратковременное (а если возможно, то и на длительное) нажатие кнопки питания.
|
![]() |
![]() |
![]() |
#4 |
Студент, не
Старожил
Регистрация: 29.01.2009
Сообщений: 2,067
|
![]()
Если не изменяет память при длительном нажатии кнопки питания сам блок питания вырубается... Аппаратно...
I am the First of Cyber Evolution...
I am the First to Program your Future... |
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 30.05.2008
Сообщений: 22
|
![]()
Вроде так. Но вот кратковременное нажатие, похоже, можно контролировать с помощью WriteGlobalPwrPolicy. Если кто-то это уже делал, буду благодарен за консультацию.
|
![]() |
![]() |
![]() |
#6 |
Регистрация: 03.12.2010
Сообщений: 3
|
![]()
В msdn по поводу WriteGlobalPwrPolicy всё доступно описано.
Вручную отключить реакцию на кратковременное нажатие кнопки pwr можно через "Электропитание - При нажатии кнопки включения питания компьютером - Действие не требуется." То же самое можно проделать и программно - WriteGlobalPwrPolicy. |
![]() |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 30.05.2008
Сообщений: 22
|
![]()
А есть ли более простой и быстрый способ, например, через перехват системных сообщений?
|
![]() |
![]() |
![]() |
#8 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]()
и чем оно поможет?
с нуля вам перехватить не даст ОС, ибо это событие обрабатывается внутри ядра. и уже потом система отсылает всем сообщения о выключении. разве что драйвер писать, но и то врятли система дает доступ к этому. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Блок питания | krotFT | Компьютерное железо | 11 | 05.07.2010 20:49 |
Блок питания??? | SKS | Компьютерное железо | 3 | 08.05.2009 12:23 |
Блок питания-ups | zajigateli | Компьютерное железо | 4 | 25.03.2009 23:53 |
Как отключить кнопки питания на системном блоке? | Kamikadze_666 | Общие вопросы Delphi | 5 | 20.02.2009 20:19 |
Отключение питания | Terran | Общие вопросы Delphi | 5 | 09.12.2007 00:44 |