读书人

FileSystemWatcher + timer解决方案

发布时间: 2012-09-09 09:27:54 作者: rapoo

FileSystemWatcher + timer
我用FileSystemWatcher监测一个文件夹,如果有新文件就运行代码。
Private Sub logchange(ByVal source As Object, ByVal e As System.IO.FileSystemEventArgs)
If e.ChangeType = IO.WatcherChangeTypes.Created Then
If e.ChangeType = IO.WatcherChangeTypes.Created Then
Convert_Timer.Enabled = True
Convert_Timer.Interval = 2000
End If
End If
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim objReader As New StreamReader(Application.StartupPath + "\Config.ini")
Dim sLine As String = ""
Dim arrText As New ArrayList()


Convert_Timer.Enabled = False

Try

watchfolder = New System.IO.FileSystemWatcher()
watchfolder.Path = “C:\report”

watchfolder.NotifyFilter = IO.NotifyFilters.DirectoryName
watchfolder.NotifyFilter = watchfolder.NotifyFilter Or IO.NotifyFilters.FileName
watchfolder.NotifyFilter = watchfolder.NotifyFilter Or IO.NotifyFilters.Attributes

AddHandler watchfolder.Created, AddressOf logchange

watchfolder.EnableRaisingEvents = True

Catch ex As Exception
WriteLog("Reading exported report from Zenon encouter error: " + ex.Message)
End Try
End Sub
Private Sub Convert_Timer_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Convert_Timer.Tick
MsgBox("New file!")
End Sub

如果有新文件,可以运行到Convert_Timer.Enabled = True,Convert_Timer.Interval = 2000。
但是timer下面的代码怎么都不运行。
请问怎么回事,谢谢先。


[解决办法]
Thread.Sleep(1000);

读书人网 >VB Dotnet

热点推荐