vb.net – 在FileSystemWatcher中处理多个Change事件
我有以下子:
Private Sub Watcher_Changed(ByVal sender As System.Object,ByVal e As FileSystemEventArgs) If Path.GetExtension(e.Name) = ".p2p" Then Exit Sub Else Try ' multiple change events can be thrown. Check that file hasn't already been moved. While Not File.Exists(e.FullPath) Exit Try End While ' throw further processing to a BackGroundWorker ChangedFullPath = e.FullPath ChangedFileName = e.Name FileMover = New BackgroundWorker AddHandler FileMover.DoWork,New DoWorkEventHandler(AddressOf ProcessFile) FileMover.RunWorkerAsync() Catch ex As Exception MessageBox.Show(ex.Message) End Try End If End Sub 当FTP上传文件时,我仍然收到多个更改文件通知. 我想修改Try,所以它也会抛出更改通知,如果它发生在过去(时间) – 让我们说3秒.它应该是微不足道的,但由于某种原因它今天不会来找我,我的思想并没有围绕我在Google上找到的答案. 谢谢, 解决方法
我创建了一个服务来上传几年前转储到FTP文件夹的文件,这里有一些我应该帮助你克服问题的事情:
>我测试了所有NotifyFilters,并选择了删除重复通知的那个(仅使用NotifyFilters.Size为每个创建的文件提供了可靠的通知,并消除了几乎所有重复的通知) 这似乎对我有用,并且该服务可靠地上传文件数月,直到我离开那份工作. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |