我使用 Windows 窗体应用程序来监视一个目录,并将放在其中的文件移动到另一个目录。
目前,它将复制文件到另一个目录,但当另一个文件被添加时,它将只是结束没有错误消息。有时它会在第三个文件结束之前复制两个文件。
这是因为我使用的是 Windows 窗体应用程序而不是控制台应用程序吗?有没有办法阻止程序结束并继续监视目录?
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();
}