![]() |
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]() ![]() ![]() |
|
Goph |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 304 Регистрация: 9.5.2002 Где: Кривой Рог Репутация: нет Всего: нет |
Значит пишу HOOK!
По нижеследующему коду видно, что у меня в файле сохраняются все запушенные программы и рядом время! Подскажите как вставить чтобы писалось све что создавалось, копировалось, удолялось и т.д. ПОДСКАЖИТЕ! БИБЛИОТЕКА: library Project2; uses Windows, Messages, Forms, SysUtils, Classes, Graphics, Controls, Dialogs, StdCtrls; var SysHook : HHook = 0; Wnd : Hwnd = 0; f: TextFile; function SysMsgProc(code : integer; wParam : word; lParam : longint) : longint; stdcall; begin if code = HC_ACTION then begin Wnd:=TMsg(Pointer(lParam)^).hwnd; end; Result:= CallNextHookEx(SysHook, Code, wParam, lParam); end; procedure hook(switch : Boolean) export; stdcall; begin if switch=true then begin SysHook := SetWindowsHookEx(WH_GETMESSAGE, @SysMsgProc, HInstance, 0); if SysHook <> 0 then end else begin if UnhookWindowsHookEx(SysHook) then SysHook := 0; end; end; exports hook; var k: String; begin k:=TimeToStr(Time); AssignFile(f,'c:\1.txt'); Append(f); Write(f,k); Write(f,' '); Writeln(f,PChar(Application.ExeName)); Close(f); end. ------------------------------------------------------- Сам код: unit Unit1; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; {для динамической загрузки функций из DLL} type MyProcType = procedure (flag : Boolean); stdcall; type TForm1 = class(TForm) Button1: TButton; Button2: TButton; procedure Button2Click(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormActivate(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; Hdll : HWND; { дескриптор загружаемой DLL (для динамической загрукзки)} function RegisterServiceProcess(dwProcessID, dwType: Integer): Integer; stdcall; external 'KERNEL32.DLL'; implementation {$R *.DFM} procedure TForm1.Button2Click(Sender: TObject); var hook: MyProcType; begin @hook:= nil; // инициализируем переменную hook if Hdll > HINSTANCE_ERROR then begin { если всё без ошибок, то } @hook:=GetProcAddress(Hdll, 'hook'); { получаем указатель на необходимую процедуру} Button1.Enabled:=True; Button2.Enabled:=False; hook(false); {вызываем нужную процедуру из DLL} end; end; procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); begin FreeLibrary(Hdll); { при закрытии формы - освобождаем DLL } end; procedure TForm1.FormActivate(Sender: TObject); var hook: MyProcType; begin RegisterServiceProcess(GetCurrentProcessID, 1); @hook:= nil; Hdll:= LoadLibrary(PChar('Project2.dll')); if Hdll > HINSTANCE_ERROR then begin @hook:=GetProcAddress(Hdll, 'hook'); Button2.Enabled:=True; Button1.Enabled:=False; hook(true); end else end; end. -------------------- Воображение гораздо важнее знаний! (Эйнштейн) |
|||
|
||||
Song |
|
|||
![]() Sysman.ru ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1095 Регистрация: 2.6.2002 Репутация: 2 Всего: 4 |
Надо найти такое сообщение которое будет отлавливать "создавалось, копировалось, удолялось и т.д."
![]() А ты думал, скопировал пример со статьи "Хуки. Аспекты реализации" и всё бдует работать под стать твоей задачи? -------------------- Прежде чем сказать "Невозможно", подумай, прав ли ты |
|||
|
||||
Goph |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 304 Регистрация: 9.5.2002 Где: Кривой Рог Репутация: нет Всего: нет |
Вопервых я пример разобрал и кое что добавил, вот именно я и спрашиваю про это сообшение? -------------------- Воображение гораздо важнее знаний! (Эйнштейн) |
|||
|
||||
Solitary_Wolf |
|
|||
Unregistered |
Posmotri Win32.hlp tam use uestb
|
|||
|
||||
lider07 |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 80 Регистрация: 11.6.2003 Где: Бишкек Репутация: нет Всего: нет |
Люди я вам в этом помочь не смогу а только отнять ваше драгоценное время и обратить ваще вниманя на раздел "копирования Файлов" если что знаети помогите!
С уважением lider07 Зарания спасибо! |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Общие вопросы" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |