【发布时间】:2013-12-23 01:39:27
【问题描述】:
我有一个问题,我似乎找不到解决方案。我正在使用 FileSystemWatcher 在 C# 中编写文件观察程序 Windows 服务。我想观看多个独立的目录,我有要观看的目录和 xml 文件中的一些其他设置。程序读取 xml,创建适当数量的 FileSystemWatchers 并将这些系统观察程序存储在字典中,并使用随机生成的 id 号(作为键)。我遇到的问题是只有第一个 FileSystemWatcher 正在响应正在创建/删除/更新的文件等。我知道其他人已经创建,因为条目在字典中。我知道 EnableRaisingEvents = true 因为所有 FileSystemWatcher 都是通过循环以相同的方式创建的。我不知道如何让多个文件观察器正常工作,如果可能的话,我想避免使用线程。如果有人有任何想法或资源可以查看,将不胜感激。
【问题讨论】:
-
如果您不显示任何代码,很难看出可能出了什么问题...
-
这个概念有效。我刚刚编写了一个成功监听两个目录的控制台应用程序。 (也许你一遍又一遍地配置一个观察者,但哈希中有很多观察者) PS - 你的“我知道”的理由非常薄弱。你只知道你可以通过调试器或跟踪输出看到的内容是真实的(甚至只有在行星没有错位时才知道)
-
您可以尝试在 codeproject 上查看此示例,codeproject.com/Articles/271669/…
标签: c# windows service filesystemwatcher directory