Форум: "Основная";
Текущий архив: 2004.03.14;
Скачать: [xml.tar.bz2];
ВнизHook Найти похожие ветки
← →
pomashok (2004-02-29 20:26) [0]Привет! Подскажите что должно быть .... чтоб по нажатию клавиши F12 выскакивало 1 сообщение а не 2 ! ????
function Key_HookKey(code: integer; wParam: integer; lParam: integer): integer stdcall;
begin
{если code >= 0, то ловушка может обработать событие}
if code >= 0 then
begin
// если Alt и "X"
// if (wParam = ord("X")) and (lParam and $20000000 <> 0) and (lParam and $40000000 = 0)
if (wParam = VK_F12) and (lParam and VK_DOWN = 0 )
then begin
Result := 1;
MessageBox(0, "ВЫ нажали клавишу F12 !", "DLL", 0);
end else
//если code<0, вызывается следующая ловушка
Result := CallNextHookEx(HKey, Code, wParam, lParam);
end;
end;
← →
Palladin (2004-02-29 20:30) [1]первое возникает на нажатие второе на отпускание... как от этого избавится читай справку... код то скопировать смог... теперь головой поработай
← →
pomashok (2004-02-29 20:35) [2]где читать подскажите .... ???
← →
Palladin (2004-02-29 20:39) [3]хотя нет.. чего это я... извиняюсь все верно... третья строчка то не закоментирована... может библиотеку не перекомпилировал?
← →
Cobalt (2004-02-29 20:39) [4]Справку на данный тип хука.
← →
Palladin (2004-02-29 20:43) [5]единственное что лучше объявлять так как и надо объявлять
function Key_HookKey(code: integer; p_wParam:wparam; integer; p_lParam: lparam): lresult; stdcall;
но думаю не в этом дело... меня мучают смутные сомнения... а при выгрузке программы ты ловушку снимаешь?
← →
pomashok (2004-02-29 20:45) [6]да все работает путем ..... тока ДВА окна замучали !!! неполучается одно убрать :(
← →
Palladin (2004-02-29 20:48) [7]ошибка в процедуре
function Key_HookKey(code: integer; wParam: integer; lParam: integer): integer stdcall;
begin
if code >= 0 then
begin
if (wParam = VK_F12) and (lParam and VK_DOWN = 0 ) then
begin
Result := 1;
MessageBox(0, "ВЫ нажали клавишу F12 !", "DLL", 0);
end else
//если code<0, вызывается следующая ловушка - вот и промахнулся код нужно форматировать нормально
Result := CallNextHookEx(HKey, Code, wParam, lParam);
end;
end;
← →
pomashok (2004-02-29 20:52) [8]я не понял что ты имел введу! ? и это не я промахнулся :) это Архангельский промахнулся когда писал книгу .... я только пытаюсь с alt+x перейти на F12 !
← →
Palladin (2004-02-29 20:59) [9]нда? :)
хорошо... с Alt-X одно окно?
← →
pomashok (2004-02-29 21:02) [10]угу ... одно .... а тут 2 !!!!!!!!!!!!!!!! блин
← →
Palladin (2004-02-29 21:14) [11]я сам тупить начал
if (wParam = VK_F12) and ( (lParam and VK_DOWN ) = 0 ) then
и исправь неточность с CallNextHookEx
← →
pomashok (2004-02-29 22:33) [12]и исправь неточность с CallNextHookEx ???? на что поменять и зачем ?
← →
Palladin (2004-02-29 22:37) [13]не хочешь не меняй... а зачем: подумай, посмотри код...
← →
pomashok (2004-02-29 22:39) [14]ну если с alt+x работает нормально .... зачем менять ?
а с F12 опять выскакивает 2 окна!
← →
Palladin (2004-02-29 23:04) [15]как я не хотел ковырятся, но ты меня заставил... пусть тебя совесть мучает
if (wParam = VK_F12) and ((lParam and $FFFFFFFFC0000000)= 0 ) then
← →
pomashok (2004-02-29 23:16) [16]if (wParam = VK_F12) and (lParam and VK_DOWN = 0 )and (lParam and $40000000 = 0) - тогда все работает и выскакивает 1 окно :) . Но что такое $40000000 ???? еси кто знает напишите мне плиз на мыло :)))
← →
pomashok (2004-02-29 23:17) [17]Palladin ... извени не заметил твоего ответа! НО Благодарен за оказанное содействие :)))
← →
Clift (2004-03-01 00:27) [18]http://www.delphimaster.ru/articles/hooks/index.html
Это на счет правильной передачи параметров в CallNextHookEx...
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.03.14;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.012 c