FileSystemWatcher полагается на операционную систему, чтобы вызвать событие. Если на устройстве хранения нет ОС, то нет доступной ОС для создания события.
Обратите внимание, что несколько факторов могут влиять на то, какие события изменения файловой системы возникают, как описано ниже:
Обычные операции файловой системы могут вызывать более одного события. Например, когда файл перемещается из одного каталога в другой, могут возникнуть несколько событий OnChanged и некоторые события OnCreated и OnDeleted. Перемещение файла - это сложная операция, которая состоит из нескольких простых операций, поэтому вызывает несколько событий. Аналогично, некоторые приложения (например, антивирусное программное обеспечение) могут вызывать дополнительные события файловой системы, которые обнаруживаются FileSystemWatcher.
FileSystemWatcher может просматривать диски, если они не переключены или не удалены. FileSystemWatcher не вызывает события для CD и DVD, потому что метки времени и свойства не могут измениться. Для правильной работы компонента на удаленных компьютерах должна быть установлена одна из необходимых платформ.
Если несколько объектов FileSystemWatcher отслеживают один и тот же UNC-путь в Windows XP до пакета обновления 1 или Windows 2000 с пакетом обновления 2 или более ранней версии, то только один из объектов вызовет событие. На машинах под управлением Windows XP SP1 и новее, Windows 2000 SP3 или новее или Windows Server 2003 все объекты FileSystemWatcher будут вызывать соответствующие события.
Установка свойства Filter не уменьшает то, что входит в буфер.
Обратите внимание, что FileSystemWatcher не вызывает событие Error, если событие пропущено или превышен размер буфера из-за зависимостей с операционной системой Windows. Чтобы не пропустить события, следуйте этим рекомендациям:
Увеличение размера буфера с помощью свойства InternalBufferSize может предотвратить пропущенные события изменения файловой системы.
Избегайте просмотра файлов с длинными именами. Рассмотрите возможность переименования с использованием более коротких имен.
Сохраняйте код обработки событий как можно короче.