| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: WinAPI и системное программирование > Отследить какие файлы создает/удаляет приложение?? |
| Автор: Nicholas 5.1.2005, 08:52 |
| SFX-архив (WinRar) из своей программы запустил, а дальше мне надо узнать какие файлы и каталоги, и где он создаст (что и куда распакует)????? |
| Автор: Akella 5.1.2005, 10:23 |
| Используй такие программы как FileMonitor RegMonitor в противном случае задавай вопросы в теме "Системное программирование" типа, создание хука. Хук - это ловушка. |
| Автор: Snowy 5.1.2005, 10:32 |
| Проще всего - при создании sfx архива, добавить в поле "Запустить после распаковки" свою программу, которая запустится из каталога, куда все распаковалось и созхранит/передаст куда-нить все необходимые данные. |
| Автор: Nicholas 6.1.2005, 07:13 | ||||
Есть они у меня, но вопрос то в том как обойтись без них!!! Добавлено @ 07:15
Все дело в том, что распаковка может осуществляться в каталоги в которых уже есть файлы!!! Мне требуется, процедурка спомобная отследить действия, определенной программы. |
| Автор: Snowy 6.1.2005, 09:38 |
| Тогда, при создании SFX архива пропиши в поле "запускать до распаковки" пропиши "command /c dir /b>files.lst" В поле "запускать после распаковки" свою програмку. В программе уже анализируй список, который будет скинут в files.lst В крайнем случае, раз уж запускаешь sfx из своей программы, то можешь из sfx-a вызвать вторую копию своей программы, только с определенным ключем, чтобы она провела весь анализ. Если запуск прописать в параметрах sfx, то тукущей папкой будет папка распаковки. |
| Автор: Akella 6.1.2005, 12:27 |
| может поможет TShellNotifyEvent? Хотя сам не пользовался |
| Автор: Nicholas 8.1.2005, 08:09 |
| Да,вероятно здесь без помощи p0s0l не обойтись! p0s0l, я в тебя верю подскажи, как такое сатворить? |
| Автор: p0s0l 8.1.2005, 14:39 |
| Nicholas, если уж обращаешься ко мне, то пиши в PM - это незачем другим читать, да и я могу не увидеть... Правила форума... Если архив делаешь не ты, то попробовать смотреть содержимое ListBox'а, в котором выводится инфа о процессе распаковки... Если SFX консольный - то еще проще - в DRKB есть статья, как забарабать себе вывод консоли чужого процесса... Как крайняя мера - перехватывать функции создания файлов... |
| Автор: p0s0l 8.1.2005, 14:40 |
| Перенесенно из раздела Delphi |
| Автор: RA 8.1.2005, 18:05 |
| Hook поставь на всё это, пример есть в арсенале и тут http://forum.vingrad.ru/index.php?showtopic=38327 |
| Автор: Nicholas 10.1.2005, 09:42 | ||
А как его смотреть? |
| Автор: p0s0l 10.1.2005, 22:22 |
| Надо юзать сообщение LB_GETTEXT. Пример попозже кину, если не разберешься. Или Girder поди поможет ? |
| Автор: Girder 12.1.2005, 04:30 | ||
Ладно... вот пример набросал под NT. Файл Filemon.sys удалять не надо PS: Я сделал слежение за всем. Если не разберешся куда свой код вставить(CreateProcess, WaitForSingleObject и т.п.) и куда фильтер на идентификатор запущенного процесса пихать - чиркни... объясню. Хотя ни чего сложного не вижу... что б тебе самому справиться p0s0l как только будет время... Удачи. |
| Автор: p0s0l 12.1.2005, 22:49 | ||
ЗЫ: Где достал описалово функций FileMon.sys ? Вроде на их сайте не видал... Сам поди раскопал ? Если знаешь функции других ихних драйверков (главное мне нужно - procexp.sys), то скинь мне, плиз |
| Автор: RA 12.1.2005, 23:39 | ||
И мне тоже если можно. |
| Автор: Girder 13.1.2005, 13:05 | ||||
|
| Автор: Nicholas 14.1.2005, 04:46 | ||||
Люди не забудьте про меня!!!
Girder, ты не против все, что найдешь здесь выложить? |
| Автор: Nicholas 14.1.2005, 04:58 | ||
У меня XP. НО, МЕНЯ ВОЛНУЕТ МАСКА!!! Какой синтаксис??? Написано Filter:='*' - понятно все файл, а мне к примеру надо файл 2.exe - значит пишем Filter:='2.exe' так не работает, Filter:='*.exe' тоже! Может я че не так понял и это фильт не к файлам относиться???? И еще, я не уверен, но кажется при подключенном инете возникает зацикливание (покрайней мере у меня) и кнопку Stop нажать невозможно!! |
| Автор: Girder 14.1.2005, 10:25 | ||||||||
PS:Че-то я не нашел procexp.sys
|
| Автор: Nicholas 14.1.2005, 12:18 | ||
Тогда на мыло мне скинь, интерсено посмотреть как это все в итоге выглядеть будет! |
| Автор: RA 15.1.2005, 06:26 | ||
Она в ресурсах procexp.exe Комодератор: Да... да, я уже нашел и потехоньку извлекаю |