Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.30;
Скачать: 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 вся ветка

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

Наверх




Память: 0.47 MB
Время: 0.036 c
14-1084092082
nikkie
2004-05-09 12:41
2004.05.30
Новая версия DMClient - 2.1.1


14-1084130472
VID
2004-05-09 23:21
2004.05.30
Excel не может как Word хранить настройки...


3-1083503907
dilp
2004-05-02 17:18
2004.05.30
ошибка при создании ADO компоненты - setFileSecurity не найдена


3-1083736337
TATIANA
2004-05-05 09:52
2004.05.30
Хранимая процедура - запрос - BLOB - поле


1-1084720501
Lammo
2004-05-16 19:15
2004.05.30
Использование PChar в dll