Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2002.02.28;
Скачать: [xml.tar.bz2];

Вниз

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 вся ветка

Форум: "WinAPI";
Текущий архив: 2002.02.28;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.44 MB
Время: 0.006 c
4-90710
Beauty_Full
2002-01-01 18:01
2002.02.28
Action !!


3-90452
ТеньЛуны
2002-02-01 14:02
2002.02.28
CalcFields


7-90677
PEC2
2001-11-26 09:05
2002.02.28
Подскажите


4-90709
Run
2001-12-23 22:15
2002.02.28
winexec


4-90708
Andrey Sharapow
2001-12-30 15:12
2002.02.28
Найти проводник .





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский