отслеживание файловых событий
- From
- Grigory Tsukanov (2:5006/17.13)
- To
- Dmitry Krylov
- Date
- 2002-02-28T11:47:05Z
- Area
- SU.WINDOWS.NT.PROG
Hello Dmitry!
AAGk>> Кто решал подобную задачу - может есть лучшее решение?
AAGk>> Моя задача ослеживать появление/копирование/изменение файлов в
AAGk>> определенном каталоге, а потом проведение определенных действий
AAGk>> с ними. Определить сам факт появления файла не
AAGk>> проблема. FindFirstChangeNotification и компания с
AAGk>> ReadDirectoryChanges нам в этом поможет. Но проблема в том что
AAGk>> событие приходит сразу как только файл начал там появлятся. А
AAGk>> он может быть длинным и копироваться медленно. Поэтому
AAGk>> сложность - определить что он уже целиком на месте.
DK> Насколько могу судить, тебе следует отслеживать изменение размера
DK> фай- ла (флаг FILE_NOTIFY_CHANGE_SIZE). Уведомление об этом
DK> отправляется пос- ле фактической записи данных на диск.
дык временные файлы вообще на диск могут не попасть. Вроде бы система старается их как можно дольше хранить в ОЗУ.
AAGk>> Пока единственная мысль - переодически открывать его на запись.
AAGk>> Если не открывается то значит еще не готов. Но здесть есть море
AAGk>> если. Может кто знает лучшее решение? Буду очень благодарен за
AAGk>> мысли по этому вопросу.
DK> У Рихтера был пример программы (в 3-м издании - точно).
AAGk>> PS: забыл добавить - задача решается под NT (4/2000/XP) на
AAGk>> чистом С (без билдеров и пр) + WinAPI.
Grigory
... " http://gsoft.newmail.ru; http://www.nvkz.kuzbass.net/comics "
--- GoldED/W32 3.00.Beta4+
* Origin: иногда я просматриваю cukanovg@mail.ru (2:5006/17.13)