![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Событие по созданию окна,процесса
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, ...)