Вниз
Скачать: CL | DM;

Как узнать "хуковое") окно ???   Найти похожие ветки 

 
juiceman ©   (2004-04-07 11:34) [0]

Ставлю хуки на клавиатуру, мышь (одинарный и двойной клики). Как узнать в каком из главных окон он произошел и в каком его дочернем окне ????


 
Diamond Cat ©   (2004-04-07 23:30) [1]

обычно в мышиных сообщениях есть координаты в которых происходят действия, по ним с помощью windowfrompoint & cildwindowfrompoint можно узнать на каком окне/контроле произощел клик, или же если вы используете хук wh_mouse, то ипользуя указатель на lparam сообщения в структуре TMOUSEHOOKSTRUCT  можно получить хендл принимающнго окна что-то типа TMOUSEHOOKSTRUCT(Pointer(Lparam)^).hwnd


 
juiceman ©   (2004-04-08 02:48) [2]

Вариант с windowfrompoint & cildwindowfrompoint я оставлял на крайний случай. А по поводу TMOUSEHOOKSTRUCT(Pointer(Lparam)^).hwnd, я думал что она ссылается на главное окно ... Спасибо, проверил на практике - все отлично, параметр содержит дескриптор конкретного окна. Как быть с клавиатурой я не знаю, это уже серьезнее ???


 
juiceman ©   (2004-04-08 06:33) [3]

Могу уточнить вопрос. Есть окно, знаю его дескриптор. При отлове сообщения о нажатии клавиши (с мышью уже разобрались) надо узнать , нажата ли она в нем или нет ??? Т.е. задача расчитана под определенное окно, все окна в системе отслеживать не надо.


 
Diamond Cat ©   (2004-04-08 23:04) [4]

GetFocus может помочь отцу русской демократии?
соответствено придется поморочиться с AttachThreadInput, а то хрен чего получиться с чужими окнами


 
juiceman ©   (2004-04-13 10:46) [5]

Помогло, спасибо.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.02 c
14-1084191871
X9
2004-05-10 16:24
2004.05.30
COM-port


4-1081638815
Gott
2004-04-11 03:13
2004.05.30
Уникальное сообщение


7-1080938781
Dmitry M. Volkov
2004-04-03 00:46
2004.05.30
неснимаемое приложение


14-1084011192
Drakon
2004-05-08 14:13
2004.05.30
С днём победы!


1-1084857655
lehich
2004-05-18 09:20
2004.05.30
close




   Наверх