监测局域网上某个共享文件夹

监测局域网上某个共享文件夹

首先确保本机已经通过网上邻居中的设置连接到服务器。并保存了登录的用户名和密码。

采用FileSystemWatcher组件,在fileSystemWatcher1的Created、changed和Deleted事件中书写代码。

 1 using System;
 2 using System.Collections.Generic;
 3 using System.ComponentModel;
 4 using System.Data;
 5 using System.Drawing;
 6 using System.Linq;
 7 using System.Text;
 8 using System.Windows.Forms;
 9 using System.IO;
10 
11 namespace SharedFiles
12 {
13     public partial class frmMonitorShareDir : Form
14     {
15         public frmMonitorShareDir()
16         {
17             InitializeComponent();
18         }
19         int i1;
20         private void btnChoose_Click(object sender, EventArgs e)
21         {
22             string filepath;
23             FolderBrowserDialog dlg = new FolderBrowserDialog();
24             if (dlg.ShowDialog() == DialogResult.OK)
25             {
26 
27                 txtPath.Text = dlg.SelectedPath;
28             }
29             filepath = txtPath.Text;
30             fileSystemWatcher1.Path = filepath;
31            
32         }
33 
34         private void fileSystemWatcher1_Created(object sender, System.IO.FileSystemEventArgs e)
35         {   
36                 ListViewItem li = new ListViewItem();
37                 li.SubItems.Clear();
38 
39                 li.SubItems[0].Text = e.Name;
40                 li.SubItems.Add(e.ChangeType.ToString());
41                 lvFiles.Items.Add(li);
42 
43         }
44 
45         private void fileSystemWatcher1_Changed(object sender, System.IO.FileSystemEventArgs e)
46         {
47             ListViewItem li = new ListViewItem();
48             li.SubItems.Clear();
49 
50             li.SubItems[0].Text = e.Name;
51             li.SubItems.Add(e.ChangeType.ToString());
52             lvFiles.Items.Add(li);
53 
54         }
55 
56         private void fileSystemWatcher1_Deleted(object sender, System.IO.FileSystemEventArgs e)
57         {
58             ListViewItem li = new ListViewItem();
59             li.SubItems.Clear();
60 
61             li.SubItems[0].Text = e.Name;
62             li.SubItems.Add(e.ChangeType.ToString());
63             lvFiles.Items.Add(li);
64 
65         }
66     }
67 }

此时更改服务器上共享文件夹的文件,增加、删除、修改,会出现监测记录。

   

C#提供的OpenFileDialog、FolderBrowserDialog都可以连接到局域网内的共享文件夹。共享文件的的读写可以像本地文件一样读写。不过这个组件的机制还真是需要好好研究一下!

posted @ 2012-09-10 15:42  太一吾鱼水  阅读(462)  评论(0编辑  收藏  举报