У меня есть прецедент, где мне нужно определить, является ли файл ReadOnly доступным для записи. Я пробовал использовать FileSystemWatcher, но он не говорит мне, какой атрибут файла изменился.
C# - Мониторинг, если атрибут Readonly любого файла был изменен
// Create a new FileSystemWatcher and set its properties.
FileSystemWatcher watcher = new FileSystemWatcher();
watcher.Path = args[1];
/* Watch for changes in Attribute (In this case only Readonly attribute). */
watcher.NotifyFilter = NotifyFilters.Attributes;
private static void OnChanged(object source, FileSystemEventArgs e)
{
// Specify what is done when a file is changed, created, or deleted.
Console.WriteLine("File: " + e.FullPath + " " + e.ChangeType);
}
Я не знаю, какие файлы ReadOnly и которые не являются. Поэтому я не могу просто проверить свойство ReadOnly файла в событии Changed.
Ну, если вы просматриваете файл только для чтения и получаете уведомление о его изменении, не можете ли вы просто проверить атрибут? –
Вам необходимо посмотреть System.IO.NotifyFilters. хотя, увидеть другие ответы, связанные с какой из них подходит код https://msdn.microsoft.com/en-us/library/system.io.notifyfilters(v=vs.110).aspx – celerno
@PeterDuniho Не могли бы вы снова открыть вопрос. Я сделал изменения. – Peaked