Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: WinAPI и системное программирование > Hook на запись фала


Автор: EugeneF 6.9.2005, 12:21
пиплы ну помоги разобратся как сделать чтобы при копировании файла на дискетку он паралельно сохранялся в какую-нибудь директорию на компе или... летел куда-нибудь по сетке... вобщем нужно знать что юзверь будет писать на флопик

Автор: _hunter 6.9.2005, 12:52
http://www.rsdn.ru/search/?page=2&mode=rank&group=3&q=%F5%F3%EA+%F4%E0%E9%EB

Автор: EugeneF 7.9.2005, 08:00
да вот капал, капал а ни че толкого не нашел smile может кто конкретнее подскажет ?

Автор: _hunter 7.9.2005, 10:57
куда уж конкретнее? или тебе программу написаь? ;)

Автор: EugeneF 7.9.2005, 11:07
smile
я не могу поймать именно на создание или копирование файла, вот в чем проблема...как отследить именно какой файл копируется?.... и в потоке скопировать его в другое место... везде в осномном инфа по поводу кейлогеров и перехвата событий мышы а по работе с файлами я не чего не могу найти... если можешь помоги smile

Автор: _hunter 7.9.2005, 11:24
перехватывай функции CreateFile() и CopyFile() инфы по перехвату функций -- хоть засыпся...

Автор: Voyager 7.9.2005, 17:46
Вот тоже ищу как поставить хук, но на чтение файла, может кто заодно подскажет?

Автор: _hunter 7.9.2005, 18:00
перехватывай ReadFile()...

Автор: EugeneF 8.9.2005, 08:48
plz smile

Автор: Cashey 16.7.2008, 10:39
Цитата(_hunter @  7.9.2005,  11:57 Найти цитируемый пост)
куда уж конкретнее? или тебе программу написаь? ;) 

есть рабочий пример перехвата ф-ции CopyFile?

Автор: SneG0K 16.7.2008, 20:38
Цитата(Cashey @  16.7.2008,  09:39 Найти цитируемый пост)
есть рабочий пример перехвата ф-ции CopyFile? 

Сплайсинг. Проще уже некуда

Автор: Cashey 18.7.2008, 14:47
Цитата(SneG0K @  16.7.2008,  21:38 Найти цитируемый пост)
Сплайсинг. Проще уже некуда

сплайсинг это значит надо внедрятся в КАЖДЫЙ процесс в системе, что в общем то неприемлимо

Автор: Riply 18.7.2008, 17:45
Цитата(Cashey @  18.7.2008,  14:47 Найти цитируемый пост)
сплайсинг это значит надо внедрятся в КАЖДЫЙ процесс в системе, что в общем то неприемлимо 


Тогда надо внедриться в один драйвер, отвечающий за запись на флешку smile

Автор: ne0n 18.7.2008, 20:28
Цитата(Cashey @  18.7.2008,  14:47 Найти цитируемый пост)
сплайсинг это значит надо внедрятся в КАЖДЫЙ процесс в системе, что в общем то неприемлимо


тык перехват api в user mode(хоть сплайсинг хоть модификация IAT) именно и строеться на внедрении dll в каждый процесс =)


Цитата(Riply @  18.7.2008,  17:45 Найти цитируемый пост)
Тогда надо внедриться в один драйвер, отвечающий за запись на флешку


ммм я почему бы просто не перехватить NtCreateFile в ядре подменной адресов в SDT? (эмм я если честно не понял к чему были столва про флешку smile )

Автор: Riply 19.7.2008, 04:34
Цитата(ne0n @  18.7.2008,  20:28 Найти цитируемый пост)
эмм я если честно не понял к чему были столва про флешку 

Sorry. "Спутала с прямым углом" (с)  smile 
Почему-то подумала, что автор топика хочет писать на флешку, а не на дискету.

Автор: Cashey 21.7.2008, 13:27
Цитата(Riply @  18.7.2008,  18:45 Найти цитируемый пост)
Тогда надо внедриться в один драйвер, отвечающий за запись на флешку

а с этого места поподробнее можно?


Автор: Riply 21.7.2008, 13:53
Цитата(Cashey @  21.7.2008,  13:27 Найти цитируемый пост)
а с этого места поподробнее можно?


Неа, нельзя ибо я, к сожалению, с драйверами "на Вы", уж не говоря об их "коррекции"  smile 
Знаю только, что у флешек может быть "персональный" драйвер.
Например, это делается, для того, чтобы ее износ был равномерным.
(Драйвер, для записи может выбирать тот кластер, которым реже пользовались).
Вот я и подумала, если допустить, что драйвер "персональный",
то почему бы не заняться именно им, оставив в покое всех остальных ? smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)