VBGood网站全文搜索 Google

搜索VBGood全站网页(全文搜索)
首页 - 经验之谈 - 用FileSystemWatcher监控作业
发表评论(0)作者:BUILDER.COM, 平台:VB6.0+Win98, 阅读:11483, 日期:2003-08-29
    在.NET Framework中的System.IO命名空间包括FileSystemWatcher类。这个类提供监控作业的目录或文件的功能。如果你的应用程序需要知道新文件是何时被加入指定目录的或者文件是何时被删除的,那么这个功能会很有用处。

要使用FileSystemWatcher,首先要创建一个类的实例。

Private dirWatcher As New System.IO.FileSystemWatcher()

接下来,通过设置Path属性设置FileSystemWatcher来监控指定目录。可以设置IncludeSubdirectories属性监控指定目录下的所有子目录。

dirWatcher.Path = "C:\Temp"
dirWatcher.IncludeSubdirectories = False

Filter属性指定目录内要监控的文件。这个属性接受通配符,所以所有的文本文件都可以通过将它设定为"*.txt"文件来监控。指定特殊文件名后只会对那个文件起作用。

dirWatcher.Filter = "*.txt"

NotifyFilter属性决定被监控的指定文件的属性。

dirWatcher.NotifyFilter = System.IO.NotifyFilters.LastAccess
Or _
System.IO.NotifyFilters.LastWrite

在设定FileSystemWatcher属性后,添加事件处理器来捕获事件,并确定它能够激发事件。

AddHandler dirWatcher.Created, AddressOf Me.OnCreation
AddHandler dirWatcher.Changed, AddressOf Me.OnCreation
dirWatcher.EnableRaisingEvents = True

最后,添加一个新的子程序来处理事件。

Public Shared Sub OnCreation(ByVal source As Object, _
ByVale As System.IO.FileSystemEventArgs)
Debug.WriteLine("File: " & e.FullPath
& " " & e.ChangeType)
End Sub