网站首页  汉语字词  英语词汇  考试资料  写作素材  旧版资料

请输入您要查询的考试资料:

 

标题 vbs 查找硬盘分区中指定扩展名文件的实现代码
内容
    vbs 用于查找硬盘所有分区中指定扩展名文件的代码,有需要的朋友可以参考下。挺实用的一段代码,用来深入学习vbs,确实不错
    挺实用的一段代码,用来深入学习vbs,确实不错咯。
    代码如下:
    on error resume next '忽略所有错误
    dim filename '声明变量
    dim re
    set re=new regexp '建立正则表达式对象实例
    re.pattern=^([a-z]|[a-z])+\:\\\w+\.vbs$
    if re.test(wscript.scriptfullname)=false then
    msgbox 请在磁盘根目录下运行本程序,否则搜索结果可能会不正确!,,messagebox
    wscript.quit
    end if
    re.pattern=^([a-za-z0-9_]|[^\x00-\xff])+\.[a-za-z]{1,4}$ '声明正则表达式的匹配模式,主要用来检验用户输入的文件名是否正确
    do
    filename=inputbox(请输入你要搜索的文件名:,messagebox)
    if filename= then wscript.quit '如果输入为空则退出脚本
    if re.test(filename)=false then
    msgbox 请输入合法的文件名!,,messagebox
    end if
    loop while re.test(filename)=false '直到用户输入正确的文件名时才跳出循环。
    set re=nothing
    dim ie
    set ie=wscript.createobject(internetexplorer.application) '建立ie对象,用来显示搜索状态
    ie.menubar=0 '不显示ie对象菜单栏
    ie.addressbar=0 '不显示ie对象地址栏
    ie.toolbar=0 '不显示ie对象工具栏
    ie.statusbar=0 '不显示ie对象状态栏
    ie.fullscreen=1 '全屏化ie对象
    ie.width=640 '设置ie对象宽度
    ie.height=120 '设置ie对象高度
    ie.resizable=0 '设置ie对象大小是否可以被改动
    ie.navigate about:blank '设置ie对象默认指向的页面
    ie.left=fix((ie.document.parentwindow.screen.availwidth-ie.width)/2) '设置ie对象左边距
    ie.top=fix((ie.document.parentwindow.screen.availheight-ie.height)/2) '设置ie对象右边距
    ie.visible=1 '设置ie对象是否可视
    with ie.document '以下为在ie对象中写入页面,跟一般的html没有区别
    .write <html>
    .write <head>
    .write <title>文件扫描状态</title>
    .write <meta http-equiv=content-type content=text/html;charset=gb2312>
    .write <style><!--
    .write body { background:#000000;text-align:center;margin:0px auto; }
    .write * { font-family:arial;font-size:9pt;color:#00cc00;line-height:140%; }
    .write a:link,ahover,a:visited { text-decoration:none; }
    .write #scanstatus { text-align:left;margin:15px; }
    .write #header { width:100%;height:20px; }
    .write #middle { width:100%;height:50px; }
    .write #footer { width:100%;height:20px;text-align:right; }
    .write --></style>
    .write </head>
    .write <body scroll=no>
    .write <div id=scanstatus>
    .write <div id=header>正在启动搜索程序。。。</div>
    .write <div id=middle></div>
    .write <div id=footer><a href=# onclick=window.close()>退出程序</a></div>
    .write </div>
    .write </body>
    .write </html>
    end with
    '定义文件系统对象变量
    dim fso
    dim objfolder
    dim objsubfolders
    dim objsubfolder
    dim objfiles
    dim objfile
    dim objdrives
    dim objdrive
    dim objtextfile
    dim str:str=
    dim i:i=0 '计数器变量
    dim result
    result=e:\搜索结果.html '搜索结果保存文件变量
    '一个过程,用来遍历硬盘文件
    function search(path)
    set objfolder=fso.getfolder(path) '获得当前路径
    set objfiles=objfolder.files '获得当前路径下的所有文件集合
    for each objfile in objfiles '开始遍历文件集合
    ie.document.getelementbyid(middle).innerhtml=objfile.path '用到ie对象的文档对象模型,将当前搜索的文件路径写入id为middle的div中
    if objfile.name=filename then '如果当前文件名与用户输入的文件名一致
    i=i+1 '计数器加一
    str=str & objfile.path & <br>
    set objtextfile=fso.opentextfile(result,2,true) '创建文本流对象,文件名为变量result所存储的字符串
    objtextfile.write(str) '将变量str中的文件路径写入html文件中
    objtextfile.close '关闭文本流对象
    set objtextfile=nothing '销毁对象
    end if
    if i>0 then
    ie.document.getelementbyid(header).innerhtml=找到 & i & 个匹配,详细信息已保存在 & result & 文件中。。。
    else
    ie.document.getelementbyid(header).innerhtml=正在执行文件搜索。。。
    end if
    wscript.sleep(20)
    next
    set objsubfolders=objfolder.subfolders '得到当前路径下的所有文件夹的集合
    for each objsubfolder in objsubfolders '遍历文件夹
    nowpath=path & \ & objsubfolder.name '得到新的文件路径
    search nowpath '调用函数自身,从新的路径开始搜索
    next
    end function
    set fso=createobject(scripting.filesystemobject)
    set objdrives=fso.drives '取得当前计算机的所有磁盘驱动器
    for each objdrive in objdrives '遍历磁盘
    search objdrive '调用函数
    next
    '结束时显示的信息
    ie.document.getelementbyid(header).innerhtml=扫描已结束。。。
    if i>0 then
    ie.document.getelementbyid(middle).innerhtml=请打开 & result & 查看详细搜索结果!
    else
    ie.document.getelementbyid(middle).innerhtml=没有找到要搜索的文件!
    end if
    '销毁对象变量,释放内存空间
    set objdrives=nothing
    set objfiles=nothing
    set objfile=nothing
    set objdrive=nothing
    set objfolders=nothing
    set objfolder=nothing
    set objsubfolders=nothing
    set objsubfolder=nothing
    set fso=nothing
随便看

 

在线学习网考试资料包含高考、自考、专升本考试、人事考试、公务员考试、大学生村官考试、特岗教师招聘考试、事业单位招聘考试、企业人才招聘、银行招聘、教师招聘、农村信用社招聘、各类资格证书考试等各类考试资料。

 

Copyright © 2002-2024 cuapp.net All Rights Reserved
更新时间:2025/5/16 4:28:02