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

Вниз

Реализация HOOK   Найти похожие ветки 

 
Alex_s   (2004-09-16 12:34) [0]

Уважаемые мастера!
Помогите плз разобраться с созданием ловушек. Почему у меня при нажатии любой клавиши в переменных code,wparam,lparam всегда одни и те же значения?

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls;

type
 TForm1 = class(TForm)
   Button1: TButton;
   Button2: TButton;
   Button3: TButton;
   Memo1: TMemo;
   Edit1: TEdit;
   Edit2: TEdit;
   Edit3: TEdit;
   procedure Button1Click(Sender: TObject);
   procedure Button2Click(Sender: TObject);
   procedure Button3Click(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;
 SysHook:HHook=0;

implementation

{$R *.dfm}

procedure SysKeyProc(code:integer;wParam:word;lParam:longint);
var Key_Kod:word;
begin
 Form1.Edit1.Text:=IntToStr(code);
 Form1.Edit2.Text:=IntToStr(WParam);
 Form1.Edit3.Text:=IntToStr(LParam);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 Close;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
 SysHook:=SetWindowsHookEx(WH_Keyboard,@SysKeyProc,HInstance,0);
 if SysHook<>0 then
 begin
   Memo1.Lines.Clear;
   Memo1.Lines.Add("Есть хук");
 end else
 begin
   Memo1.Lines.Clear;
   Memo1.Lines.Add("Ошибка");
 end;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
 if UnHookWindowsHookEx(SysHook) then
 begin
   Memo1.Lines.Clear;
   Memo1.Lines.Add("Нет хука");
 end else
 begin
   Memo1.Lines.Clear;
   Memo1.Lines.Add("Ошибка");
 end;
end;

end.


 
MBo ©   (2004-09-16 13:18) [1]

в код не смотрел, но SysKeyProc должно быть со спецификатором STDCALL!


 
Alex_s   (2004-09-16 13:31) [2]

Спасибо MBo!



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

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

Наверх




Память: 0.47 MB
Время: 0.022 c
14-1096356585
undert
2004-09-28 11:29
2004.10.17
Помогите найти компоненту


14-1096045730
VictorT
2004-09-24 21:08
2004.10.17
Вот такой вот спам пришёл...


1-1096876615
cad2206
2004-10-04 11:56
2004.10.17
Сложение времени


6-1091769892
Скив
2004-08-06 09:24
2004.10.17
запуск скрипта


6-1091796611
MetalFan
2004-08-06 16:50
2004.10.17
отправитель сообщения Net send