Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Отмена завершения работы Windows

399
14 июля 2009 года
KIV
432 / / 20.01.2009
Как из графического приложения Windows узнать о завершении работы (перезагрузке, переходу в ждущий режим) и отменить его?
Заранее спасибо.
12K
14 июля 2009 года
lifs
163 / / 06.09.2007
Обработать сообщение WM_QUERYENDSESSION.
399
15 июля 2009 года
KIV
432 / / 20.01.2009
Спасибо
399
15 июля 2009 года
KIV
432 / / 20.01.2009
Не блокирует переход в ждущий режим.
Часть приложений успевает завершиться.
Есть ли способ этого недопустить?
12K
15 июля 2009 года
lifs
163 / / 06.09.2007
Есть. Функция SetThreadExecutionState, а также сообщение WM_POWERBROADCAST.

(добавлено) эта функция и это сообщение восприпятствуют автомат. переходу в ждущий режим, а вот при принудительном вроде нет.
399
16 июля 2009 года
KIV
432 / / 20.01.2009
Вообще то мне нужно только заблокировать управление пританием с клавиатуры. Может есть для этого специальный способ?
12K
16 июля 2009 года
lifs
163 / / 06.09.2007
Это про 1-3 кнопки над стрелками? :) Самого замучили :D

Отключаются они след. образом.

В XP. Свойства экрана -> Заставка -> Питание... -> Дополнительно (примерно так, точно не помню, завтра могу точнее сказать)

В Vista. Панель управления -> Электропитание -> "Укажите действия кнопок питания" (точно не уверен, под вистой такой клавы у меня не было :) )
399
17 июля 2009 года
KIV
432 / / 20.01.2009
Это я и сам знаю.
А мне нужно программно. Пишу программу блокировки клавиатуры (уже блокирует все кнопки кроме alt+ctrl+del и мышь). Хочу заблокировать и кнопки управления питанием.
12K
21 июля 2009 года
lifs
163 / / 06.09.2007
Видимо необходимо писать драйвер либо отключать эти кнопки на время блокировки через реестр.
399
23 июля 2009 года
KIV
432 / / 20.01.2009
А какие ключи реестра этим управляют? какие надо поместить в них значения?
535
24 июля 2009 года
Нездешний
537 / / 17.01.2008
disable ctrl+alt+del
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
"DisableCAD"=dword:00000001

disable shutdown command
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]
"NoClose"=dword:00000001

disable standby
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ACPI\Parameters]
"AMLIMaxCTObjs"=hex:04,00,00,00
"Attributes"=dword:00000070

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ACPI\Parameters\WakeUp]
"FixedEventMask"=hex:20,05
"FixedEventStatus"=hex:00,84
"GenericEventMask"=hex:18,50,00,10
"GenericEventStatus"=hex:10,00,ff,00
12K
24 июля 2009 года
lifs
163 / / 06.09.2007
Цитата: KIV
А какие ключи реестра этим управляют? какие надо поместить в них значения?



Вот этот код отключает действия кнопок.

Код:
SYSTEM_POWER_POLICY spp;
memset(&spp, 0, sizeof(spp));
if (!CallNtPowerInformation(SystemPowerPolicyAc, 0, sizeof(spp), &spp, sizeof(spp)))
{
    spp.SleepButton.EventCode = POWER_FORCE_TRIGGER_RESET;
    spp.SleepButton.Action = PowerActionNone;
    spp.PowerButton.EventCode = POWER_FORCE_TRIGGER_RESET;
    spp.PowerButton.Action = PowerActionNone;
    CallNtPowerInformation(SystemPowerPolicyAc, &spp, sizeof(spp), &spp, sizeof(spp));
}
if (!CallNtPowerInformation(SystemPowerPolicyDc, 0, sizeof(spp), &spp, sizeof(spp)))
{
    spp.SleepButton.EventCode = POWER_FORCE_TRIGGER_RESET;
    spp.SleepButton.Action = PowerActionNone;
    spp.PowerButton.EventCode = POWER_FORCE_TRIGGER_RESET;
    spp.PowerButton.Action = PowerActionNone;
    CallNtPowerInformation(SystemPowerPolicyDc, &spp, sizeof(spp), &spp, sizeof(spp));
}
399
25 июля 2009 года
KIV
432 / / 20.01.2009
Вообще то у меня FASM, но всё равно спасибо.
А как вновь включить эти кнопки? Мне нужна лишь временная блокировка.
7
25 июля 2009 года
@pixo $oft
3.4K / / 20.09.2006
Ну,наверное,сначала сохранить предыдущие значения,а потом восстановить их,не так ли!?:)
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог