我正在使用Windows窗体应用程序监视目录,并将放置在其中的文件移动到另一个目录。
目前,它将文件复制到另一个目录,但是当添加另一个文件时,它将以没有错误消息结束。有时它确实会复制两个文件,然后再复制第三个文件。
这是因为我使用的是Windows Form Application而不是Console app?有什么办法可以阻止程序结束并继续监视目录?
private void watch()
{
this.watcher = new FileSystemWatcher();
watcher.Path = path;
watcher.NotifyFilter = NotifyFilters.LastAccess | NotifyFilters.LastWrite
| NotifyFilters.FileName | NotifyFilters.DirectoryName;
watcher.Filter = "*.*";
watcher.Changed += OnChanged;
watcher.EnableRaisingEvents = true;
}
private void OnChanged(object source, FileSystemEventArgs e)
{
//Copies file to another directory.
}
public void Dispose()
{
// avoiding resource leak
watcher.Changed -= OnChanged;
this.watcher.Dispose();
}