vb监视多个文件夹
--------------------编程问答-------------------- --------------------编程问答-------------------- 代码不全,无法判断 --------------------编程问答-------------------- 请问楼上大神 还需要什么代码?? --------------------编程问答-------------------- 给你个逐行读文本文件的代码参考Text1.Text = ""--------------------编程问答-------------------- 把监控的功能做成一个dll,或者类模块
CommonDialog1.Filter = "*.txt 文件|*.txt"
CommonDialog1.ShowOpen
Open CommonDialog1.FileName For Input As #1
Do While Not EOF(1) ' 循环至文件尾。
Line Input #1, TextLine ' 读入一行数据并将其赋予某变量。
Text1.Text = Text1.Text & TextLine & vbCrLf
Loop
Close #1
使用多个实例分别对多个文件夹监控 --------------------编程问答-------------------- 泰山大神 的方法蛮好的 但是这个和我哪个要怎么连接啊 思路我觉得是可行的 当然5楼的也可以 只是有点麻烦 --------------------编程问答--------------------
Private Sub Myjob(ByVal MyPath as String)--------------------编程问答--------------------
Dim r As Long
Dim watchPath As String
Dim watchStatus As Long
'watchPath = Dir1.Path
watchPath = MyPath
terminateFlag = False
cmdBegin.Enabled = False
MsgBox "Beginning watching of folder " & watchPath, vbInformation
frmWatchFolder.WindowState = 1
hWatched = WatchCreate(watchPath, FILE_NOTIFY_FLAGS)
watchStatus = WatchDirectory(hWatched, 100)
If watchStatus = 0 Then
'这个地方省略了 这个地方是发现文件有改动就报警
MsgBox "被监视的文件已被修改. 恢复监控...", vbInformation
frmWatchFolder.WindowState = 0
cmdBegin.Enabled = True
cmdStop.Enabled = False
Do
watchStatus = WatchResume(hWatched, 100)
If watchStatus = -1 Then
MsgBox "文件监控已被终止 " & watchPath, vbExclamation
Else:
MsgBox "被监视的文件已被修改.", vbInformation
’这个地方也是 发现文件有改动就报警 这地方就不贴出来了
End If
Loop While watchStatus = 0
Else
MsgBox "文件监控已被终止 " & watchPath, vbInformation
End If
End Sub
Private Sub cmdBegin_Click()--------------------编程问答--------------------
Open MyTxtFileName For Input As #1
Do While Not EOF(1) ' 循环至文件尾。
Line Input #1, TextLine ' 读入一行数据并将其赋予某变量。
Myjob TextLine Loop
Close #1
End Sub
Private Sub cmdBegin_Click()--------------------编程问答-------------------- 我勒个去 泰山大神 你太神了 我去试试 好使了给你追加分哈哈 --------------------编程问答-------------------- 哦 对了 我忘记说个问题 我的不是text文件 而是textbox里面的内容 我用text3.text的内容总是无法输入到那个函数里面 好像是不分行了 比如c:\ c:\windows 就这样一行全输出来了 --------------------编程问答-------------------- 监控和上面说的是没问题了 但是我想问一下大神们 为什么我写的这个到这里开始加载并监控Private Sub Myjob(ByVal MyPath as String)
Open MyTxtFileName For Input As #1
Do While Not EOF(1) ' 循环至文件尾。
Line Input #1, TextLine ' 读入一行数据并将其赋予某变量。
Myjob TextLine
Loop
Close #1
End Sub
只能加载到一个文件的监控 停止了 这个才能开始加载下一个 在停止下一个才能加载下下一个 不能同时监控么?还是API本身就不具备这个功能?? 还是我把程序写错了 还是上面的程序 却只能监控一个文件夹的改变 --------------------编程问答-------------------- 你可以用Label显示一些信息,你用了那么多MsgBox,MsgBox是必须响应的
--------------------编程问答-------------------- --------------------编程问答-------------------- 泰山大神 我太崇拜你了 你的徽章真是应该得的 我要好好像你学习了 哈哈 --------------------编程问答-------------------- --------------------编程问答-------------------- 现在的情况是这样的 我逐行读出了 要监控的路径 然后放到泰山大神给我改的那个myjob里面 把msg改成了 label.caption的文字输出 但是还是监控一个文件夹 其他也不行 --------------------编程问答-------------------- vb 也有文件夹监控组件的,如果有多,动态的创建多个组件就行了,如果用组件,是可以监控子文件夹的,如果在同一个分区,不想创建多个组件,用一个也行了,自己事组件的事件中处理一下就OK啦,组件是微软自带的,叫FileSystemWatcher --------------------编程问答-------------------- 楼上大哥 这个组件 小弟不会用啊。。。。。 --------------------编程问答-------------------- 谁来帮帮我啊。。。。。。。。哎~~~愁死我了 --------------------编程问答-------------------- FileSystemWatcher
这玩意很简单的呀,msdn上有示例,或GG一下也行,现在我改用.net了,没用vb了,不然倒是可以搞个例子给你 --------------------编程问答-------------------- 百度了下,VB中也有FileSystemWatch组件的,参数MS也很简单,不过具体没试过。帮楼主顶下,持续学习中!
补充:VB , 基础类