#c#
#c#
Вопрос:
Мой вопрос в том, почему при использовании класса FileSystemWatcher для отслеживания сохранения файла Excel возвращается FileSystemEventArgs .Удален? При мониторинге файла формата .txt это .Изменен
Ответ №1:
Я полагаю: потому что Excel сначала создает временный файл, записывает туда информацию, затем удаляет исходный файл .xls и переименовывает временный файл.
Возможно, Excel таким образом гарантирует, что исходный файл не будет потерян в случае сбоя операции сохранения.
Комментарии:
1. Я подтверждаю, что это то, что происходит. Это можно наглядно увидеть с помощью бесплатного программного обеспечения Process Monitor от SysInternals.
Ответ №2:
Похоже, что Excel вполне может удалять и заново создавать файл, который вы просматриваете. Один из способов доказать это эмпирически — запустить приложение, которое просматривает файл, а затем открыть и сохранить файл в другом приложении, например Notepad. Если это приводит только к запуску Changed
события, то это Excel вызывает Deleted
событие для запуска.