Home

Page 77
Page 77
background image

 Глава 3

begin

//Запускаем ловушку

 :=

 0);

end

begin

//Отключить ловушку

 ;

SysHook := 0;

end;

end;

exports RunStopHook index 1;

begin
end.

Самое основное в нашей библиотеке — это процедура RunStopHook. Ей пе-
редается только один параметр. Если он равен true, то регистрируется ло-

вушка, которая будет ловить все сообщения, предназначенные Windows. Для

ЭТОГО ИСПОЛЬЗуеТСЯ

 SetWindowsHookEx. У ЭТОЙ фуНКЦИИ ДОЛЖНО

быть четыре параметра:

1. Тип ловушки. Указан

 такая ловушка ловит все сооб-

щения.

2. Указатель на функцию, которой будут пересылаться сообщения Windows.
3. Указатель на приложение.

4. Идентификатор потока. Если параметр равен нулю, то используется те-

кущий.

В качестве второго параметра указано имя функции

 Она так же

описана в этой

 но ее мы рассмотрим чуть позже. Значение, которое воз-

вращает фунКЦИЯ SetWindowsHookEx,

 В Переменной SysHook.

Оно нам понадобится, когда мы будем отключать ловушку.

Если наша процедура RunStopHook получила в качестве параметра значение

false, то нужно отключить ловушку. Для этого вызывается процедура

 которой передается значение переменной SysHook.

Это то значение, которое мы получили при создании ловушки.

Процедура RunStopHook объявлена как экспортная:

exports RunStopHook index 1;


Copyright © 2020 Файлообменник files.d-lan.dp.ua

Использование любых материалов сайта возможно только с разрешения автора.