![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как отловить выключение windows. [D7, Win2k, WinXP]
Merlot © (2005-04-29 10:59:00)Здравствуйте Уважаемые!
Подскажите пожалуйста как узнать, что windows выключается.
Пробывал WM_QUERYENDSESSION и WM_ENDSESSION, когда выключение идет через меню пуск, все нормально работает, но если комп выключать кнопкой "включение", то эти события не отслеживаются. Спасибо!
Merlot (2005-04-29 12:49:00) [1]у меня отключает windows кнопка выключения.
alpet (2005-04-29 12:33:00) [2]У тебя блок-питания отключает Windows или кнопка выключения ?
The WM_QUERYENDSESSION message is sent when the user chooses to end the session or when an application calls the ExitWindows function.
Действительно - если пользователь хочет завершить сеанс, или приложение вызвало функцию ExitWindows.
Есть еще сообщения по просыпанию/засыпанию компа.
WM_POWERBROADCAST
А также полезные функции в разделе MSDN: Power Management Functions
Локальная ссылка: ms-help://MS.MSDNQTR.2003APR.1033/power/base/power_management_functions.htm
КиТаЯц (2005-04-29 11:22:00) [3]Держи:
private
procedure WMQueryEndSession(var Message: TWMQueryEndSession); message WM_QUERYENDSESSION;
procedure tForm1.WMQueryEndSession(var Message: TWMQueryEndSession);
begin
inherited;
Message.Result:=0;
showmessage('Кажется Виндус вырубается...');
Message.Result:=1;
end;
Кнопку "пуск" отлавливает если в панели управление - электропитание - при нажатии кнопки отключения питания НЕ стоит "Действие не требуется"
Кнопку "Ресет" почему-то не ловит...
mgcr (2005-04-29 11:15:00) [4]
> но если комп выключать кнопкой "включение", то эти события
> не отслеживаются. Спасибо!
Если выдергивать сетевой шнур, то сообщений тоже не посылается. Странно, правда ?