Главная страница
    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.45 MB
Время: 0.036 c
1-1094815712
XAdmin
2004-09-10 15:28
2004.09.26
Сохранение закладок в IDE Delphi


3-1093438949
Jey
2004-08-25 17:02
2004.09.26
BDE


4-1092376525
kirasuki
2004-08-13 09:55
2004.09.26
System menu


4-1092397878
Сергей В. М.
2004-08-13 15:51
2004.09.26
Извенить текст StatusBar a в чужом приложении.


1-1094782802
X-Disa
2004-09-10 06:20
2004.09.26
Команда из строки





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский