Главная страница
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.049 c
6-1091802512
Wolfram
2004-08-06 18:28
2004.10.17
Использование ICS


14-1096541120
ArMellon
2004-09-30 14:45
2004.10.17
Нужна пограмма для компьютерного зала


14-1096310610
lipskiy
2004-09-27 22:43
2004.10.17
Ё-маё! да что ж за фигня такая! ну подскажите же что неверно?


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


1-1096892036
leonidus
2004-10-04 16:13
2004.10.17
Drag&amp;Drog группы элементов в ListBox