Использование FileSystemWatcher для поиска измененного файла на сетевом ресурсе.
Код прекрасно работает для всех файлов в папке, но не для файла с именем CUSEXP3.TXT Если я переименую файл в CUSTEXP3. TXT, FSW работает, как и CUS.TXT и CUSEXQ3.TXT
Любые мысли. Спасибо.
Спасибо. Попробуйте на локальном диске C и получите такое же поведение.
Код ниже. Файл представляет собой текстовый файл с запятой-разделителем, содержащий около 22000 строк. Однако довольно определенная проблема связана с именем файла, так как оно работает / не работает только путем переименования - поэтому размер, права доступа и т. Д. c не могут быть проблемой.
watchfolder = New System.IO.FileSystemWatcher()
'this is the path we want to monitor
watchfolder.Path = txt_watchpath.Text
'Add a list of Filter we want to specify
'make sure you use OR for each Filter as we need to
'all of those
watchfolder.NotifyFilter = IO.NotifyFilters.DirectoryName
watchfolder.NotifyFilter = watchfolder.NotifyFilter Or
IO.NotifyFilters.FileName
watchfolder.NotifyFilter = watchfolder.NotifyFilter Or
IO.NotifyFilters.Attributes
watchfolder.NotifyFilter = watchfolder.NotifyFilter Or
IO.NotifyFilters.LastWrite
watchfolder.NotifyFilter = watchfolder.NotifyFilter Or
IO.NotifyFilters.CreationTime
watchfolder.NotifyFilter = watchfolder.NotifyFilter Or
IO.NotifyFilters.Size
watchfolder.NotifyFilter = watchfolder.NotifyFilter Or
IO.NotifyFilters.Security
watchfolder.NotifyFilter = watchfolder.NotifyFilter Or
IO.NotifyFilters.LastAccess
watchfolder.Filter = "*.txt"
' add the handler to each event
AddHandler watchfolder.Changed, AddressOf logchange
AddHandler watchfolder.Created, AddressOf logchange
AddHandler watchfolder.Deleted, AddressOf logchange
' add the rename handler as the signature is different
AddHandler watchfolder.Renamed, AddressOf logrename
'Set this property to true to start watching
watchfolder.EnableRaisingEvents = True
btn_startwatch.Enabled = False
btn_stop.Enabled = True