Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.01.27;
Скачать: CL | DM;

Вниз

Обработка сообщений в HOOKке   Найти похожие ветки 

 
plaha999 ©   (2002-12-10 13:35) [0]

Уважаемые мастера, подскажите как мне при обработке сообщения, которое я ловлю в своем хуке узнать HWND или HANDLE того, от кого это сообщение произошло???

Я имею процедурку перехвата сообщений:

function SysMsgProc(code : integer; wParam : word; lParam : longint) : longint; stdcall;
begin
if code = HC_ACTION then
begin
{Проверяю, нажата ли правая кнопка мыши}
if TMsg(Pointer(lParam)^).message = WM_RBUTTONDOWN then
begin
{Здесь мне надо получить HWND или HANDLE
того, от кого это сообщение произошло}
end;
{Пытаемся передать сообщение дальше по цепочке hook-ов}
Result:= CallNextHookEx(GlobalData^.SysHook, Code, wParam, lParam);
end;


Если кто знает, подскажите,
не успеваю дописать научную работу :-(


 
Song ©   (2002-12-10 13:46) [1]

Вот Вы почему-то message используете, а на остальные поля записи посмотреть не хотите:

type
TMsg = packed record
hwnd: HWND;
message: UINT;
wParam: WPARAM;
lParam: LPARAM;
time: DWORD;
pt: TPoint;
end;


 
plaha999 ©   (2002-12-10 14:37) [2]

Если сообщение пришло от моей формы, то hWnd совпадает с hWnd формы, а если от рабочего стола, то он почему-то не равен GetDeskTopWindow: hWND;
ПОЧЕМУ???



Страницы: 1 вся ветка

Текущий архив: 2003.01.27;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.019 c
3-86725
Мышь
2003-01-07 21:29
2003.01.27
Master-Detail, BDE и MSSQL. Обновление Detail-таблицы.


1-86861
jiura
2003-01-19 19:40
2003.01.27
РУсский язык в Delphi


3-86701
FROM_X
2003-01-09 13:16
2003.01.27
Ну я устал сам себе рейтинг повышать чтобы привлечь внимание


3-86717
FROM_X
2003-01-09 12:59
2003.01.27
Тонкий вопрос про компоненты DAO 3.4.5(Oracle)


1-86817
Programist21
2003-01-17 22:26
2003.01.27
Растягивание формы