【发布时间】:2012-01-20 18:44:44
【问题描述】:
我需要监控文件夹及其子目录是否有任何文件操作(添加/删除/重命名)。我已经阅读了有关 FileSystemWatcher 的信息,但我想监视每次程序运行或用户按下“检查更改”按钮之间的更改(FSW 似乎更倾向于运行时检测)。我的第一个想法是遍历所有(子)目录并对每个文件进行哈希处理。然后,连接所有哈希(已排序)并对其进行哈希处理。当我想检查更改时,我会重复该过程并检查哈希是否相同。
这是一种有效的方法吗? 此外,一旦我检测到更改,如何尽快找出添加、删除或重命名的文件?
附带说明,只要这些脚本不需要最终用户安装任何东西并且脚本可以通知我的 C# 应用程序更改,我不介意使用脚本来执行此操作,如果它们更快的话。
【问题讨论】:
-
我对你想要做什么以及 FileSystemWatchner 没有做什么而你需要它做什么感到困惑。
-
AFAIK,FSW 不会检测程序关闭和重新打开之间的文件更改。
标签: c# scripting filesystems directory monitor