Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Система";
Текущий архив: 2003.10.30;
Скачать: [xml.tar.bz2];

Вниз

Как отследить копирование-перенос файлов в системе?   Найти похожие ветки 

 
vvvvvvvvv   (2003-08-06 12:33) [0]

Как отследить копирование-перенос файлов в системе?


 
Игорь Шевченко   (2003-08-06 13:41) [1]

ICopyHook


 
vvvvvvvvv   (2003-08-06 14:04) [2]

В общем спасибо. Хоть что-то. А это я нашёл в других разных местах. Может, ещё будут какие-нибудь предложения?

...
Обработчики перемещений – реализуются интерфейсом ICopyHook. Эти обработчики позволяют получать и контролировать некоторые файловые операции, применимые только к папкам и принтерам . Доступны начиная с Windows 95.

...
Позволяет контролировать некоторые файловые операции, которые происходят черех оболочку. Вы можете разрешить или запретить их, но Вы не сможете получать уведомление об успешности операции или об ошибке .


 
R4D][   (2003-08-06 14:50) [3]

Кроме этого "официальных" средств вроде нет. Но можно сделать хук на вызов соотв. функций из стандартных библиотек... Не знаю, что сложнее, что проще...


 
SMaxim   (2003-08-06 16:23) [4]

R4D][, а можно по подробнее.


 
R4D][   (2003-08-06 20:26) [5]

Подробнее... ну на Дельфе я реализации перехвата не видел(вернее видел, и даже пытался делать, но не видел статьи на эту тему), если знаешь С, то тебе к Дж. Рихтеру "Windows для професионалов", если знаешь асм, то тебе на wasm.ru, там статья есть на эту тему. Если ты имеешь в виду подробней о функциях, то тебе к SDK "File Functions" :)...


 
SMaxim   (2003-08-06 23:29) [6]

R4D][,
Так ты имеешь ввиду отлов вызовов функций по принципу дебагера???
В SDK "File Functions" есть только что вроде FindFirstChangeNotification и ReadDirectoryChangesW, но это не похоже на отлов функций вроде CreateFile и т.д.
Честно говоря я в конец запутался.


 
R4D][   (2003-08-07 12:02) [7]

Нет, я имею в виду отлов функций из 3его кольца. ОК, если не хочешь читать статью на wasm.ru, то !!!ВКРАТЦЕ!!! это изменение таблиц импорта, так чтобы функции с определенным именем(в нашем случае, например CopyFileW) соответствовал адрес НАШЕЙ функции в памяти. Нуууу, я не могу объяснить проще. Есть еще много способов, но это самый красивый, мультиплатформеный. Но, в общем-то, если ты заинтересовался этой темой, то наиболее полно она описана в вышеуказанной статье.


 
panov   (2003-08-07 12:36) [8]

>SMaxim (06.08.03 23:29)

Для того, чтобы контролировать изенения в файловой системе, достаточно использовать

FindFirstChangeNotification/FindNextChangeNotification/FindCloseChangeNotification или R eadDirectoryChangesW


 
SMaxim   (2003-08-07 17:40) [9]

Всем спасибо.


 
OHP   (2003-08-08 00:42) [10]

Где-то читал, что можно использовать COM-технологию и подделать оболочку. Но лучше использовать компоненты Shell+. На Торри нашелю


 
Alexander   (2003-08-08 09:22) [11]

Shell+ отличная библиотека, сам её использую, но файлы контролировать она неможет! Потомучно это нельзя сделать стандартными средствами Shell.
А именно это нужно автору.


 
Дмитрий В. Белькевич   (2003-08-19 00:55) [12]

Надежно и правильно все фалы можно контролировать _только_ через драйвера. Смотрите Filemon. Все давно и хорошо работает, причем с исходниками. Под 9x нужно перехватывать только одну vxd"шную функцию - по исходникам можно разобраться.



Страницы: 1 вся ветка

Форум: "Система";
Текущий архив: 2003.10.30;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.01 c
1-98683
Softal
2003-10-21 08:19
2003.10.30
richEdit


1-98680
col-isaev
2003-10-21 13:11
2003.10.30
DLL


6-98774
volser
2003-08-08 21:22
2003.10.30
Как програмно вызвать стандартный виндозный дозвонщик?


4-98945
k@rt
2003-08-25 20:12
2003.10.30
Реестр


1-98570
lasso
2003-10-20 11:58
2003.10.30
help





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский