Проблемы с триггером событий FileSystemWatcher - PullRequest
0 голосов
/ 15 апреля 2010

Похоже, FileSystemWatcher запускает события более одного раза. Вот мои настройки;

 watcher = new FileSystemWatcher();
 watcher.Path = @"D:\testSpace";
 watcher.InternalBufferSize = 1024*64;
 watcher.Deleted += Triggered;
 watcher.Changed += Triggered;
 watcher.Created += Triggered;
 watcher.Error += ErrorOccured;
 watcher.NotifyFilter = NotifyFilters.LastWrite;
 watcher.IncludeSubdirectories = true;

 watcher.EnableRaisingEvents = true; 
  • Если вы изменяете документ, событие «Измененный документ» срабатывает дважды.

  • Событие создания новой папки не запускается, если в папке не создан новый файл.

  • Удаленное событие не сработало (также пытались использовать Shift Delete)

вы, ребята, знаете какие-нибудь способы решения этих проблем?

1 Ответ

3 голосов
/ 15 апреля 2010

FileSystemWatcher :

Обычные операции файловой системы могут вызывать более одного события.Например, когда файл перемещается из одного каталога в другой, могут возникнуть несколько событий OnChanged и некоторые события OnCreated и OnDeleted.Перемещение файла - это сложная операция, которая состоит из нескольких простых операций, поэтому вызывает несколько событий.Аналогично, некоторые приложения (например, антивирусное программное обеспечение) могут вызывать дополнительные события файловой системы, которые обнаруживаются FileSystemWatcher.

Решение вашей первой проблемы описано в ссылке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...