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

Вниз

факт создания или изменения файла   Найти похожие ветки 

 
fenixaz ©   (2006-03-15 07:58) [0]

Подскажите пожалуйста, как реализовать (желательно с примером), следующую задачу:
Надо узнать факт создания или изменения файла в определенной директории и во всех директориях в нее вложенных и чтобы это работало и под 9x и XP.
И чтобы механизм возвращал путь и имя файла с которым произошли изменения или который создался, а так же показывал что это новый или измененный файл.

ReadDirectoryChangesW работает т.к. надо не но не работает под 9х
FindFirstChangeNotification работает и там и там, но не возвращает имя файла.
RxFolderMonitor тоже к сожалению не возвращает имя файла.

Структура директорий примерно такая:
root
- примерно 20 вложенных каталогов
--- 1 вложенный каталог
------ 10 вложенных каталогов
И в каждой конечной директории до 1000 файлов.


 
clickmaker ©   (2006-03-15 10:02) [1]


> И чтобы механизм возвращал путь и имя файла с которым произошли
> изменения

универсального решения для всех ОС походу нет.. Разве что вести базу файлов, а потом шерстить папку FindFirstFile/NextFile на предмет изменений


 
fenixaz ©   (2006-03-16 02:58) [2]

Хорошо, надо под 9х (задача так стоит), шерстить всю папку мне кажется долго, т.к. файлы обновляются каждые 3-10 секунд.


 
Ihor Osov'yak ©   (2006-03-16 03:24) [3]

драйвер-фильтр файловой системы. Увы, совершенно разные реализации для 9x и NT-XP..  Возможна только унификация на уровне интерфейса с win32, а то и немного выше - на уровне классса, взаимодействующем с фильтром.

www.sysinternals.com, filemon как пример готового изделия. На диске к соотв. книге Соломона - Руссиновича есть исходники драйвера, не самой последней версии..

увы, не делфи.. я имею ввиду драйвер, оболочку, работающую на уровне win32 можно и на делфи..



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

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

Наверх




Память: 0.47 MB
Время: 0.259 c
2-1147776239
alexss
2006-05-16 14:43
2006.06.04
проблема с ShellExecute


15-1147418488
Думкин
2006-05-12 11:21
2006.06.04
А вы говорите...


15-1146912971
Внук
2006-05-06 14:56
2006.06.04
С праздником


15-1146756580
n_n_n
2006-05-04 19:29
2006.06.04
25 порт, Outlook


4-1142251757
Чапаев
2006-03-13 15:09
2006.06.04
Кто запустил процесс?