【发布时间】:2011-08-19 04:10:23
【问题描述】:
背景信息:我正在使用服务中实现的 FileSystemWatcher 类来监视文件中的更改。这是触发 onCreate 事件时引发参数异常(路径不是合法形式)的编码部分。
FileMonitor.CS
public partial class FileMonitor:ServiceBase
{
public FileSystemWatcher Watcher = new FileSystemWatcher();
Private void FileWatcher()
{
FileActionHandler ActionHandler = new FileActionHandler();
Watcher.Created += new FileSystemEventHandler(ActionHandler.onCreate);
Watcher.Deleted += new FileSystemEventHandler(ActionHandler.onDelete);
Watcher.Renamed += new RenamedEventHandler(ActionHandler.onRenamed);
Watcher.EnableRaisingEvents = true;
}
}
FileActionHandler.CS
class FileActionHandler
{
FileMonitor FileMon = new FileMonitor();
public void onCreate/onRename/onDelete(object source, FileSystemEventArgs e)
{
try
{
FileMon.Watcher.EnableRaisingEvents = false;
}
catch
{
/* Exception Code */
}
finally
{
FileMon.Watcher.EnableRaisingEvents = true;
}
}
}
问题: 谁能建议我为什么抛出异常以及如何解决它?
【问题讨论】:
-
哪一行抛出异常?
-
这就是问题所在。我不知道哪一行引发了异常。但是我将范围缩小到导致抛出异常的这部分代码。
-
我猜你在发布之前已经简化了你的代码。你能发布你的实际代码吗?
-
当我使用 FileSystemWatcher 监视文件中的更改时,我实际的整个代码工作正常。但是自从我添加这部分代码以来,异常被抛出并且我的服务将停止工作。本节中的某个地方会引发错误。
-
您可以将调试器连接到服务以查看其崩溃的位置吗?
标签: c# filesystemwatcher argumentexception