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

Hook на клавиатуру.   Найти похожие ветки 

 
AnthreX   (2003-08-25 02:48) [0]

У меня такой вопрос, когда ставишь hook на клавиатуру, функция:
function KeyboardProc(Code: Integer; wParam: WPARAM; lParam: LPARAM): Integer; stdcall;
возвращает параметры: wParam – код нажатой клавиши и lParam - набор битовых флагов с дополнительной информацией.
Так вот проблема следующая:
wParam – возвращает код заглавного английского символа, независимо от регистра и раскладки клавиатуры. Как от этого избавиться? Например если я нажимаю клавишу “й”, то как определить, что нажата именно “й”, а не “Q”?
lParam – хоть и содержит флаги, но как я понял такого рода информацию из него не вытянешь. Что делать?


 
Song ©   (2003-08-25 09:28) [1]

Какой именно хук ставишь? WH_KEYBOARD ? По call-back ф-ии это не поймёшь.


 
AnthreX   (2003-08-26 03:13) [2]

Я ставлю WH_KEYBOARD.


 
KosilkA ©   (2003-08-26 15:04) [3]

знакомая проблема :-)
GetKeyboardLayout(GetWindowThreadProcessId(GetForegroundWindow,nil))


 
AnthreX   (2003-08-28 02:50) [4]

Спасибо. Идея понятна, а как, зная код кодовой страницы конвертировать текст. Может, есть какая-нибудь API функция или придется писать ее самому?



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

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



Память: 0.45 MB
Время: 0.022 c
1-41711
MaG
2003-11-03 19:16
2003.11.13
HTML


6-41857
malamba
2003-09-11 10:00
2003.11.13
а как создать свою страницу в Delphi


4-42329
waw
2003-09-03 19:11
2003.11.13
Как использовать функции NetFileGetInfo и netFileEnum


3-40930
Chaked
2003-10-17 17:23
2003.11.13
Отчеты


4-42300
Andriy Tysh
2003-09-17 17:48
2003.11.13
Resize колонок в DBGrid е




   Наверх