Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Обработка сообщений в HOOKке [D5, Win95/98]


plaha999 ©   (2002-12-10 15:49:00) 

Почему, когда я пререхватываю событие, обрабатываю его, и обнуляю результат функции-фильтра, система все-ровно реагирует на это событие, как сделать чтобы не реагировала???
Вот код функции-фильтра, что не так???

function SysMsgProc(code : integer; wParam : word; lParam : longint) : longint; stdcall;
begin
if code = HC_ACTION then
begin
if TMsg(Pointer(lParam)^).message = wm_RButtonUp then
begin
if GetDeskTopHandle = TMsg(Pointer(lParam)^).hwnd then
begin
{НА ЭТО СОБЫТИЕ WINDOWS НЕ ДОЛЖНА РЕАГИРОВАТЬ}
Result:=0;
Exit;
end;
end;
end;
{Пытаемся передать сообщение дальше по цепочке hook-ов}
Result:= CallNextHookEx(GlobalData^.SysHook, Code, wParam, lParam);
end;


Romkin   (2002-12-10 16:51:00) [1]

Попробуй вместо
Result:=0;
Exit;
поставить TMsg(Pointer(lParam)^).message := WM_NULL;


Наверх

Титульная страница Поиск, карта сайта Написать письмо