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

Вниз

Получение нажатых клавиш   Найти похожие ветки 

 
ZLOFENIX ©   (2006-08-21 07:45) [0]

Как получить нажатые клавиши, например в блокноте,
А НЕ ВО ВСЕ СИСТЕМЕ, и без длл !


 
Сергей М. ©   (2006-08-21 10:38) [1]

см. WH_KEYBOARD_LL


 
ZLOFENIX ©   (2006-08-22 01:18) [2]

а можна в виде кода ?


 
Сергей М. ©   (2006-08-22 08:11) [3]


> ZLOFENIX ©   (22.08.06 01:18) [2]

http://www.google.ru/search?hs=kW2&hl=ru&client=firefox-a&rls=org.mozilla%3Aru%3Aofficial&q=wh_keyboard_ll&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA&lr=lang_ru


 
ANB ©   (2006-08-22 14:54) [4]


> WH_KEYBOARD_LL

И как хендл окна тут узнать ?


 
Сергей М. ©   (2006-08-22 14:59) [5]


> ANB ©   (22.08.06 14:54) [4]


GetForegroundWindow(), естественно)

Дальше с пом. GetWindowThreadProcessId получаем ID процесса, ну а имея оной узнать имя соответствующего ЕХЕ-файла не составляет трудностей


 
ANB ©   (2006-08-22 18:17) [6]


> GetForegroundWindow(),

Неаккуратно эта штука работает. Я пробовал уже. Если много щелкать, то промахивается. Лучше WH_GETMESSAGE. Правда DLL понадобится.


 
ZLOFENIX ©   (2006-08-23 02:54) [7]

А как узнать что клавиша нажата именно в блокноте ?


 
ANB ©   (2006-08-23 10:05) [8]


> ZLOFENIX ©   (23.08.06 02:54) [7]

Узнать хендл окна блокнота, поставить хук WH_GETMESSAGE (DLL писать придется), в функцию-фильтр хука будет приезжать хендл окна, которому адресовалось сообщение. И обычное сравнение if (Handle = NoteHandle) then begin . . . :)



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

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

Наверх




Память: 0.48 MB
Время: 0.062 c
15-1165495853
sergey888
2006-12-07 15:50
2006.12.31
Сегодня побит температурный рекорд


15-1165390126
stone
2006-12-06 10:28
2006.12.31
Мир сошел с ума...


4-1156274077
Dot
2006-08-22 23:14
2006.12.31
поиск hwnd одного из двух окон


2-1165909132
term1t
2006-12-12 10:38
2006.12.31
Сново Access Violation...


9-1141156965
Просто_Я
2006-02-28 23:02
2006.12.31
Почему такой код в DelphiX не работает?