Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Событие по созданию окна,процесса


SergeySEM ©   (2003-07-25 12:41:00) 

Привет Всем Мастерам !
у меня прога работает с таймером OK-OB
следит за окнами которые появляются в windows
и исчезают делая из этого нужные выводы
типа закрыть, свернуть, скрыть
но у меня есть идея сделать то-же но
без участия таймера и загрузки процессора
то есть работать по событию
пожалуйста скажите мне какое событие отвечает за это


__Ed__   (2003-07-26 09:59:00) [1]

Пример у SergeySEM немного некорректен, т.к. код глобальный хук должен располагаться в DLL"ке. У меня возникала подобная же задача, но к сожалению, из-за нехватки времени, я её не довёл до ума. Но на грабли расположения хука в EXE"шнике я уже наступил :)

Поэтому просьба к SergeySEM: когда отадишь код перехвата создания окон, кинь мне плиз образец на <URL>stealth@proton-sss.ru</URL>!


Guerrillero   (2003-07-26 00:58:00) [2]

http://www.delphimaster.ru/articles/hooks/index.html


SergeySEM   (2003-07-25 13:47:00) [3]

комп у меня вешается можно поподробнее
мне Hook кидать в Dll что-ли

var
Form1: TForm1;
MyHook: HHOOK;

implementation

{$R *.dfm}

function KeyboardProc(hCode: Integer; wParam: Longint; lParam: Longint): LRESULT; stdcall;
begin
Form1.Label1.Caption:="Ok" ;
Result := CallNextHookEx(MyHook, hCode, wParam, lParam);
end;



procedure TForm1.Button1Click(Sender: TObject);
begin
MyHook := SetWindowsHookEx(WH_CBT, @KeyboardProc, HInstance, 0);
if MyHook <> 0 then Caption:="Hook стоит";
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
( MyHook)

комп у меня вешается можно поподробнее
мне Hook кидать в Dll что-ли

var
Form1: TForm1;
MyHook: HHOOK;

implementation

{$R *.dfm}

function KeyboardProc(hCode: Integer; wParam: Longint; lParam: Longint): LRESULT; stdcall;
begin
Form1.Label1.Caption:="Ok" ;
Result := CallNextHookEx(MyHook, hCode, wParam, lParam);
end;



procedure TForm1.Button1Click(Sender: TObject);
begin
MyHook := SetWindowsHookEx(WH_CBT, @KeyboardProc, HInstance, 0);
if MyHook <> 0 then Caption:="Hook стоит";
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
UnhookWindowsHookEx(MyHook);
end;


Игорь Шевченко   (2003-07-25 13:06:00) [4]

SetWindowsHookEx (WH_CBT, ...)


Наверх

Титульная страница Поиск, карта сайта Написать письмо