filesystemwatcher在一个网络驱动器上工作但在另一个网络驱动器上工作

时间:2016-07-27 09:52:43

标签: vb.net csv filesystemwatcher

对于csv文件中的每个新条目,代码需要读取它&验证后添加另一个Excel文件。 所以我有'filesystemwatcher',一旦'文件/文件夹'的'attridutes'被'改变'就会触发。我编译了我的代码&创建了文件夹结构。

案例1.本地驱动器上的文件夹结构 在新的csv条目中,发生变更事件&代码在Excel中添加条目

案例2.网络驱动器1上的文件夹结构 在新的csv条目中,发生变更事件&代码在Excel中添加条目

案例3.网络驱动器2上的文件夹结构或其他用户的本地驱动器 在csv中新输入时,更改事件不会触发

请参阅下面的表格加载代码

    watchfolder = New FileSystemWatcher()

    watchfolder.Path = GunResPath

    watchfolder.NotifyFilter = NotifyFilters.Attributes

    watchfolder.IncludeSubdirectories = False

    ' Only watch csv files.
    watchfolder.Filter = IO.Path.GetFileName(myFile)

    AddHandler watchfolder.Changed, AddressOf logchange

    watchfolder.EnableRaisingEvents = True

按钮单击表单启用引发事件设置为true 请帮忙解决。

1 个答案:

答案 0 :(得分:0)

Filesystemwatcher存在由长文件名,多个文件更改和一堆其他内容触发的问题。

https://msdn.microsoft.com/en-us/library/system.io.filesystemwatcher(v=vs.110).aspx

你可以调整缓冲区大小,但实际上,对于任何关键的东西,我都不会依赖它。如果您确实需要知道文件或目录是否已更改,您可能需要定期扫描它。