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

Вниз

Как перехватить мультимедиа клавиши на клавиатуре?   Найти похожие ветки 

 
Darthman ©   (2004-08-15 02:04) [0]

Сабж. Нужно повесить хук, чтобы работало при нажатии в ЛЮБОЙ программе. Как не пробовал - не выходит. Может быть есть мысли?


 
DeadMeat ©   (2004-08-15 14:55) [1]

ИМХО на любую клавиатуру вряд ли найдешь метод... Только через их собственные драйвера (или что там у них), те что вместе идут. Придется копать каждый из них, и составить некий список.
Другой способ (правда не знаю сработает или нет) - написать некий "низкоуровневый драйвер клавиатуры"...

---
...Death Is Only The Begining...


 
TUser ©   (2004-08-15 15:19) [2]


> Другой способ (правда не знаю сработает или нет) - написать
> некий "низкоуровневый драйвер клавиатуры"...

Это вряд ли. С этими клавишами каждый драйвер по-своему работает, поэтому написать что-то универсаьное затруднительно.


 
Darthman ©   (2004-08-15 17:56) [3]

вопрос как? мне бы под одну конкретную клаву хотябы.


 
Кириешки ©   (2004-08-16 01:05) [4]

Хм...

Ну, попробуй так :



var
 h:hhook;

function Proc(code:integer; wParam:WPARAM; lParam:LPARAM):
lresult;stdcall;
var c:array[0..255] of char;
nScan:integer;
begin
if (code>=0)and(teventmsg(pointer(lparam)^).message=wm_keydown) then begin
nScan:=hibyte((teventmsg(pointer(lparam)^).paramL));
nscan:=nscan shl 16;
GetKeyNameText(nScan,c,256);
form1.ListBox1.Items.Add(c);
end;
result:=callnexthookex(h,code,wparam,lparam);
end;

procedure FormCreate();
begin
h:=setwindowshookex(WH_JOURNALRECORD,@Proc,hinstance,0);
caption:=inttostr(h);
end;

procedure FormClose();
begin
unhookwindowshookex(h);
end;

end.



Вроде должно работать, но только за сканирование не ручаюсь.



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

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

Наверх




Память: 0.47 MB
Время: 0.025 c
4-1092224998
JJJ
2004-08-11 15:49
2004.09.26
Изменение цвета компонентов созданных на WinAPI


1-1095000503
Gear
2004-09-12 18:48
2004.09.26
Как сделать, чтобы форму нельзя было закрыть и уничтожить пока


4-1091759215
SkyRanger
2004-08-06 06:26
2004.09.26
Джойстики и ихнее API


3-1093872229
Relaxxx
2004-08-30 17:23
2004.09.26
Не могу толком записать в блоб поле картинку в оракл через ODAC


3-1093791839
ALex77777
2004-08-29 19:03
2004.09.26
dbf