FileSystemWatcher работает некорректно - C#
Формулировка задачи:
В программе имеется FileSystemWatcher, настроенный на мониторинг всех изменений во всех папках на диске. При безвозвратном удалении файла с этого диска событие OnDeleted элемента срабатывает, а вот при перемещении файла или его удалении в Корзину (т.е. то же перемещение в папку D:\Recycle.Bin) ни одно из событий Watcher'а не срабатывает (даже OnError). Пробовал увеличить размер InternalBuffer'а, безрезультатно.
Что можно с этим сделать? Или какие есть альтернативы этому компоненту?
Заранее спасибо за ответы/советы.
Решение задачи: «FileSystemWatcher работает некорректно»
textual
Листинг программы
static void Main() { FileSystemWatcher watcher = new FileSystemWatcher(".\\", "*"); watcher.NotifyFilter = NotifyFilters.Attributes | NotifyFilters.CreationTime | NotifyFilters.DirectoryName | NotifyFilters.FileName | NotifyFilters.LastAccess | NotifyFilters.LastWrite | NotifyFilters.Security | NotifyFilters.Size; watcher.Renamed += new RenamedEventHandler(WatcherCallback); watcher.Changed += new FileSystemEventHandler(WatcherCallback); watcher.Created += new FileSystemEventHandler(WatcherCallback); watcher.Deleted += new FileSystemEventHandler(WatcherCallback); watcher.InternalBufferSize = 10000; watcher.IncludeSubdirectories = true; watcher.EnableRaisingEvents = true; Console.ReadLine(); } static void WatcherCallback(object sender, FileSystemEventArgs e) { Console.WriteLine("{0} -> {1}", e.FullPath, e.ChangeType); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д