FileSystemWatcher Class - простой вопрос - PullRequest
2 голосов
/ 20 мая 2011

Я сейчас играю с классом FileSystemWatcher, хотел знать, как указать путь к каталогу, но также все его дочерние файлы являются папками.Поэтому он будет искать любые изменения в любом месте C: \ например, C: \ Program Files \ test и т. Д.

string DirPath = "C:\\*.*";

Я попытался добавить . в путь директрой, но безуспешно

Исходный код ниже:

static void Main(string[] args)
{
    string DirPath = "C:\\*.*";
    FileSystemWatcher FileWatcher = new FileSystemWatcher(DirPath);
    FileWatcher.Changed += new FileSystemEventHandler(FileWatcher_Changed);
    FileWatcher.Created += new FileSystemEventHandler(FileWatcher_Created);
    FileWatcher.Deleted += new FileSystemEventHandler(FileWatcher_Deleted);
    FileWatcher.Renamed += new RenamedEventHandler(FileWatcher_Renamed);
    FileWatcher.EnableRaisingEvents = true;

    Console.ReadKey();
}

Ответы [ 2 ]

7 голосов
/ 20 мая 2011

Используйте IncludeSubdirectories свойства FileSystemWatcher.

Если вы добавите строку

FileWatcher.IncludeSubdirectories = true;

будет смотреть все подкаталоги по указанному пути.

1 голос
/ 20 мая 2011

Размещение уведомления об изменении файла на всех C: это ужасная идея - если вы действительно хотите контролировать весь том, вам, вероятно, следует использовать USN Journal

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