Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.08.02;
Скачать: CL | DM;

Вниз

Отловить момент открытия файла   Найти похожие ветки 

 
Filer   (2009-05-31 08:18) [0]

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


 
NailMan ©   (2009-05-31 08:27) [1]

есть у меня исходники файл-ватчера готового наипсанного также по готовому примеру.
http://nailalex.dyndns.org/zakroma/archives/filewatcher.rar

вот в ту сторону и надо курить, вырезать, дописать че надо.

---
P.L.U.R. and WBR, NailMan aka 2:5020/3337.13


 
Filer   (2009-05-31 08:43) [2]

Спасибо. Гляну


 
Filer   (2009-05-31 08:59) [3]

Посмотрел. Иногда не реагирует на открытие файла. И я так понимаю - не видит разницы между открытием файла и каким либо действием, т.к. отлавливает последнее время изменения %)

Можно ли каким-либо образом распознать что произошел именно запуск файла?


 
Юрий Зотов ©   (2009-05-31 09:34) [4]

> Filer   (31.05.09 08:59) [3]

Запускаются программы, а не файлы. И уж только после своего запуска программа открывает как бы "запущенный" файл.

Значит, и перехватывать нужно запуск программ, а не файлов. То есть - нужен перехват CreateProcess. А остальное дает гугль:

http://www.google.com/search?q=%D0%9F%D0%B5%D1%80%D0%B5%D1%85%D0%B2%D0%B0%D1%82+CreateProcess&rls=com.microsoft:ru:IE-SearchBox&ie=UTF-8&oe=UTF-8&sourceid=ie7&rlz=1I7GZHZ


 
oldman ©   (2009-05-31 10:33) [5]


> Юрий Зотов ©   (31.05.09 09:34) [4]
> Запускаются программы, а не файлы. И уж только после своего
> запуска программа открывает как бы "запущенный" файл.


И то не факт.
А как с базой данных сетевой?


 
Юрий Зотов ©   (2009-05-31 11:32) [6]

> oldman ©   (31.05.09 10:33) [5]
> А как с базой данных сетевой?

Очень просто - никак. Читаем сабж.


 
antonn ©   (2009-05-31 22:34) [7]


> Значит, и перехватывать нужно запуск программ, а не файлов.

значит ему нужно отлавливать обращение к файлу (графическому, аудио, видео, текстовому - не важно) и его "открытие" в соответствующей программе. Слово "открыть" предусмотрительно взято в кавычки :)


 
Petr V. Abramov ©   (2009-06-01 00:18) [8]


> Юрий Зотов ©   (31.05.09 09:34) [4]


> Запускаются программы, а не файлы.

это у компьтера (у венды). А у юзера (неглупой по жизни, но комп знающей настолько, насколько нужно его знать ей подруги) "я умею чистить диск D:, на котором интернет".
Раз в задаче "запускаются файлы", явно не CreateProcess.
Знать бы задачу.


 
asail ©   (2009-06-01 00:50) [9]


> Знать бы задачу.

Подозреваю, что это некий логгер - следить кто, когда и сколько чего пооткрывал.
Я когда-то такой для приятеля писал. У него типа конструкторского бюро было. Сидело несколько теток и рисовали что-то на автокаде. Поскольку каждый файл в имени содержал номер проекта, то и надо было засекать какой файл когда был открыт/закрыт и суммировать время по проектам.
Думаю, и тут что-то такое. Хотя...


 
Petr V. Abramov ©   (2009-06-01 00:55) [10]


> Поскольку каждый файл в имени содержал номер проекта, то
> и надо было засекать какой файл когда был открыт/закрыт
> и суммировать время по проектам.

переименовать файл -> рабоать с ним сколько надо -> переименовать обратно -> открыть -> сходить покурить -> закрыть.
Работа над файлом - 5 мин.
Максимизировать работу над файлом так же просто :)


 
Германн ©   (2009-06-01 01:30) [11]


> antonn ©   (31.05.09 22:34) [7]
>
>
> > Значит, и перехватывать нужно запуск программ, а не файлов.
>
>
> значит ему нужно отлавливать обращение к файлу (графическому,
>  аудио, видео, текстовому - не важно) и его "открытие" в
> соответствующей программе. Слово "открыть" предусмотрительно
> взято в кавычки :)

Правильно, что в кавычки. :)

Но мой телепатор (при минимуме информации о сути сабжа) подсказывает, что автору нужно следить за некими изменениями файлов в некоем каталоге/директории.
Тогда FindFirstChangeNotification и т.д.


 
Filer   (2009-06-01 04:42) [12]

Задача:
Мониторится один каталог (возможно, вложенные тоже, но не критично).
В случае "открытия" файла - записывается что за файл был "открыт", а затем он копируется в нужное место либо удаляется через N секунд.

Не курсовая, не диплом. Утилита


> Но мой телепатор (при минимуме информации о сути сабжа)
> подсказывает, что автору нужно следить за некими изменениями
> файлов в некоем каталоге/директории.
> Тогда FindFirstChangeNotification и т.д.


Телепатор в норме :) Почитаю функцию. Спасибо.
Но если будут еще мнения - я с удовольствием выслушаю :)


 
AndreyV ©   (2009-06-01 05:15) [13]

> [12] Filer   (01.06.09 04:42)

FileMon посмотреть.



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

Текущий архив: 2009.08.02;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.01 c
15-1243542627
Юрий
2009-05-29 00:30
2009.08.02
С днем рождения ! 29 мая 2009 пятница


2-1244117526
b/@.
2009-06-04 16:12
2009.08.02
Можно ли объекту уничтожить самого себя ?


3-1225220926
kile
2008-10-28 22:08
2009.08.02
sql server, оператор output и adoDataSet


15-1243743525
Filer
2009-05-31 08:18
2009.08.02
Отловить момент открытия файла


11-1204559200
MiniQ9
2008-03-03 18:46
2009.08.02
FreePascal - Linux - KOL, как подружить?