![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как запретить выключение Windows НЕ используя CloseQuery? [D7, WinXP]
Grinder © (2004-05-29 16:22:00)Чего-то не сильно ловиться, вот пример :
Код
{
Это всё лежит в dll
}
procedure SetHook; export; stdcall;
Begin
SysHook:=SetWindowsHookEx(WH_GETMESSAGE,@HookProc,HInstance,0);
End;
function HookProc(Code:Integer; WParam:LongInt; LParam:LongInt):LongInt; stdcall;
begin
if Code=HC_ACTION then
case TMsg(Pointer(LParam)^).Message of
WM_QUERYENDSESSION :
begin
Beep(3000,300);
end
else Result:=CallNextHookEx(SysHook,Code,WParam,LParam);
end;
end;
Это дело не работает. Хоря вроде бы всё правильно. А как запретить его, я вообще не знаю.
SammIk (2004-05-30 09:37:00) [1]Таким способом ты лишь отлавливаешь ТО, что уже случилось.
Ось уже закрывается и сообщает тебе об этом)).
И это сообщение можно отловить и без хуков).
Gero (2004-05-29 16:28:00) [2]
> Как запретить выключение Windows
Никак.