我正在寻找一种方法来监控哪些进程在一段时间内正在使用(或尝试访问)文件。有哪些好的Windows API或工具可以实现这一目标?
答案 0 :(得分:1)
您可以通过重新分析点替换该文件。重新分析点调用自定义文件系统过滤器,该过滤器可以将访问重定向到另一个文件。例如,这是NTFS联结的工作原理。如果让文件系统过滤器以相同的方式处理重新分析点,则可以拦截所有进程的所有尝试以打开基础文件。然而,这是一种相当严厉的方法,因为它涉及修改文件系统本身。
答案 1 :(得分:0)
您可以使用FileSystemWatcher。
这是一个很好的啧啧。 http://www.geekpedia.com/tutorial173_File-monitoring-using-FileSystemWatcher.html
答案 2 :(得分:-1)
FileSystemWatcher不适合确定流程。
已经有一个不同的问题。看here,这个解决方案符合您的需求。