te Sub FileSystemWatcher1_Created(ByVal sender As Object, ByVal e As System.IO.FileSystemEventArgs) Handles FileSystemWatcher1.Created
Dim fs As New FileStream("e:\log.txt", FileMode.Append)
Dim sw As New StreamWriter(fs)
sw.WriteLine(Now() & Microsoft.VisualBasic.vbTab & "创建" & e.FullPath)
sw.Close()
fs.Close()
End Sub
'' Rename文件(夹)时候触发,记录创建信息到e:\log.txt中
Private Sub FileSystemWatcher1_Renamed(ByVal sender As Object, ByVal e As System.IO.RenamedEventArgs) Handles FileSystemWatcher1.Renamed
Dim fs As New FileStream("e:\log.txt", FileMode.Append)
Dim sw As New StreamWriter(fs)
sw.WriteLine(Now() & Microsoft.VisualBasic.vbTab & "重命名" & e.OldFullPath & "-" & e.FullPath)
sw.Close()
fs.Close()
End Sub
'' 删除文件(夹)时候触发,记录创建信息到e:\log.txt中
Private Sub FileSystemWatcher1_Deleted(ByVal sender As Object, ByVal e As System.IO.FileSystemEventArgs) Handles FileSystemWatcher1.Deleted
Dim fs As New FileStream("e:\log.txt", FileMode.Append)
Dim sw As New StreamWriter(fs)
sw.WriteLine(Now() & Microsoft.VisualBasic.vbTab & "删除" & e.FullPath)
sw.Close()
fs.Close()
End Sub
到目前为止,这个服务已经写好了,下面作一个安装
程序:
在service的设计模式上点击右键,选择添加安装
程序。系统会自动添加一个类ProjectInstaller,设计模式上有一个ServiceProcessInstaller1 和ServiceInstaller1。设置ServiceInstaller1的Display Name为File Watching Service,starttype为Automatic,表示自动启动。设置ServiceProcessInstaller1 的account为LocalSystem。
由于服务是不能运行的,我们选择生成解决方案。ok!
最后安装我们的服务:
.NET Framework自带了一个工具,InstallUtil,使用很简单InstallUtil c:\winservicefilewatching\bin\winservicefilewatching.exe '' 刚才编译好的
程序的路径
这样就安装好了,Uninstall也很容易。首先SCM中关闭服务,InstallUtil/u c:\\winservicefilewatching.exe ''the same path
这样在系统的services中就会多出一个服务,显示为File Watching Service,选择启动就可以开始监视
总结:
&nbs