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

Hook   Найти похожие ветки 

 
DNT ©   (2001-12-30 13:37) [0]

Устанавливаю хук на WH_KEYBOARD.
Почему, при нажатию на клавишу выпадает 2 одинаковых значения?
Иногда и больше.
Как выяснить, заглавная буква или прописная?

Вот обработчик:
Function KeyboardHook(Code: Integer; ParamW: WPARAM; ParamL: LPARAM): LRESULT;stdcall;
Begin
If Code IN [HC_ACTION, HC_NOREMOVE] Then
Begin
SendMessage(ShareInf^.AppWndHandle, WM_USER, ParamW, Code);
End;
Result := CallNextHookEx(ShareInf^.OldHookHandle, Code, ParamW, ParamL)
End;

А в проге:
Edit1.Text :=Edit1.Text + chr(Message.WParam);


 
Suntechnic ©   (2001-12-30 17:13) [1]

WM_KEYUP и WM_KEYDOWN он ловит, поэтому и два раза.


 
Dimaond Cat ©   (2001-12-31 15:11) [2]

Сантехник правильно ответил но не предложил выход, а выход соответственно перехватывать либо WM_KEYUP и WM_KEYDOWN либо wm_char каким из этих сообщений пользоваться зависит от поставленной задачи, т.к. в у этих сообщений разные параметры



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

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



Память: 0.45 MB
Время: 0.005 c
1-90548
Dave
2002-02-11 06:59
2002.02.28
Memo or RichEdit


1-90593
boa
2002-02-12 13:05
2002.02.28
Есть проблема при выводе не печать.


14-90663
Light Elf
2002-01-15 20:15
2002.02.28
Регулярные выражения


3-90514
Alex_C
2002-02-05 12:49
2002.02.28
ОСТОРОЖНО! ВОЗМОЖНО НОВЫЙ ВИРУС!


4-90692
Ted
2001-12-27 08:44
2002.02.28
Отрубить клаву




   Наверх