![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Отловить копирование файла
[tek] © (2005-05-31 15:38:00)Необходимо отлавливать все операции копирования файла в системе. Для этого была написана ДЛЛ, которая устанавливает в системе Hook, который отлавливает сообщения типа WM_MESSAGE. После этого проверяю тип сообщения. Так вот ни WM_COPY, ни WM_COPYDATA копирование не отлавливают =(. Подскажите, может надо ловить какое-то другое сообщение? И как узнать, какой файл и куда копируется?
Текст обработки пойманного сообщения:
function SysMsgProc(code: integer; wParam: word; IParam: Longint): longint; stdcall;
var f: text;
begin
if code=HC_ACTION then begin
if TMsg(Pointer(IParam)^).message=WM_COPYDATA then begin
assignfile(f,'d:\messages.txt');
append(f);
writeln(f,'Скопирован файл!');
closefile(f);
end;
end;
CallNextHookEx(SysHook, Code, wParam, IParam);
end;
alpet (2005-05-31 15:50:00) [1]Здесь уже обсуждалось что копирование файла перехватить не возможно, но реально перехватить отдельные операции - открытие, чтение и запись файла (опять же через ядреный драйвер).
xShadow (2005-05-31 15:45:00) [2]Угу. Драйвер ядра поможет. на wasm