отслеживание файловых событий
- From
- Dmitry Krylov (2:5051/1.8)
- To
- kovu
- Date
- 2002-02-13T21:48:23Z
- Area
- SU.WINDOWS.NT.PROG
Hello Alex!
Sunday January 01 1970 00:00, Alex A Galkin (kovu) wrote to All:
AAGk> Кто решал подобную задачу - может есть лучшее решение?
AAGk> Моя задача ослеживать появление/копирование/изменение файлов в
AAGk> определенном каталоге, а потом проведение определенных действий с ними.
AAGk> Определить сам факт появления файла не проблема.
AAGk> FindFirstChangeNotification и компания с ReadDirectoryChanges нам в этом
AAGk> поможет. Но проблема в том что событие приходит сразу как только файл
AAGk> начал там появлятся. А он может быть длинным и копироваться медленно.
AAGk> Поэтому сложность - определить что он уже целиком на месте.
Насколько могу судить, тебе следует отслеживать изменение размера фай-
ла (флаг FILE_NOTIFY_CHANGE_SIZE). Уведомление об этом отправляется пос-
ле фактической записи данных на диск.
AAGk> Пока единственная мысль - переодически открывать его на запись. Если не
AAGk> открывается то значит еще не готов. Но здесть есть море если.
AAGk> Может кто знает лучшее решение?
AAGk> Буду очень благодарен за мысли по этому вопросу.
У Рихтера был пример программы (в 3-м издании - точно).
AAGk> PS: забыл добавить - задача решается под NT (4/2000/XP) на чистом С (без
AAGk> билдеров и пр) + WinAPI.
AAGk> _________________
AAGk> С наилучшими пожеланиями!
AAGk> Алексей.
AAGk> --- InterSquish NNTP Server/FTN Gate v.1.7.0.1
AAGk> * Origin: Default InterSquish Origin (2:5020/1873.25)
Dmitry
--- Единственное, что постоянно в жизни - неизбежность изменений ---
* Origin: Let's the peace begin! (2:5051/1.8)