标题: vbs 遍历磁盘搜索文件,会跳过个别目录问题?
[打印本页]
作者: vcstone
时间: 2008-1-29 18:24
标题: vbs 遍历磁盘搜索文件,会跳过个别目录问题?
爱虫遍历文件代码:
sub scan(folder_) 'scan函数定义,
on error resume next '如果出现错误,直接跳过,防止弹出错误窗口
set folder_=fso.getfolder(folder_)
set files=folder_.files ' 当前目录的所有文件集合
for each file in filesext=fso.GetExtensionName(file) '获取文件后缀
ext=lcase(ext) '后缀名转换成小写字母
if ext="mp5" then '如果后缀名是mp5,则进行感染。请自己建立相应后缀名的文件,最好是非正常后缀名 ,以免破坏正常程序。
Wscript.echo (file)
end if
next
set subfolders=folder_.subfolders
for each subfolder in subfolders '搜索其他目录;递归调用
scan( )
scan(subfolder)
next
end sub
用这个代码进行全盘搜索时会有个别目录跳过不扫描(我电脑上就是windows目录),去掉容错语句就会提示没有权限,
这位兄弟也提到了,代码都是差不多:
http://www.cn-dos.net/forum/view ... B%E6%90%9C%E7%B4%A2
当指定c:\windows来扫描的时候就不会提示没有权限.不明白是什么原因,请高人指点一下?
作者: vcstone
时间: 2008-1-30 15:46
怎么都没人讨论一下这个呢,批处理的遍历就有了,似乎VBS遍历磁盘都没有一个很好的方案.呵呵?
作者: fastslz
时间: 2008-1-30 15:52
这里讨论DOS,CMD批处理为主,DOS,CMD解决不了的问题才考虑VBS脚本
wmic能遍历硬盘上某文件,VBS当然轻而一举的了
作者: vcstone
时间: 2008-1-30 16:29
Quote: |
Originally posted by fastslz at 2008-1-30 03:52 PM:
这里讨论DOS,CMD批处理为主,DOS,CMD解决不了的问题才考虑VBS脚本
wmic能遍历硬盘上某文件,VBS当然轻而一举的了 |
|
这里讨论DOS,CMD批处理为主;--明白
wmic能遍历硬盘上某文件--似乎有点了解
只是不明白为什么上面的递归遍历会跳过个别目录?
还有.暂时也没搜索到比较完好的遍历磁盘搜文件代码.
作者: vcstone
时间: 2008-1-30 16:31
还是就是对DOS了解真是甚忽,自己在学着vbs,所以希望能有vbs的解决方法.