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

Вниз

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;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.025 c
4-43945
pirat
2004-01-08 10:01
2004.03.14
shared секция в dll


3-43329
BlackTiger
2004-02-17 16:48
2004.03.14
Как сделать аналог


1-43586
sig22
2004-02-27 14:22
2004.03.14
Декомпиляция


1-43571
AlexNx
2004-02-27 16:11
2004.03.14
Активность главного меню


6-43714
Lord_KILLMAN
2004-01-08 01:06
2004.03.14
Товарищи!!! Кто может чем-либо помочь (сет. прогр.) , отзовитесь!