一个硬盘文件搜索的Asp源码

硬盘

可能具有一定的危害性,请不要用于非法企图,否则后果自负
<%
'**************************代码源自网络***********************
'******************可能具有一定的危害性,请不要用于非法企图,否则后果自负*******************
'**********************修改:Blue2004***********************
'*************Setnewsearch=newSearchFile'声明*************
'*************newsearch.Folder="F:+E:"'传入搜索源*************
'*************newsearch.keyword="汇编"'关键词*************
'*************newsearch.Search'开始搜索*************
'*************Setnewsearch=Nothing'结束*************
'*************************************************************
Server.ScriptTimeOut=99999'程序加载的超时设置
ClassSearchFile
dimFolders'传入绝对路径,多路径使用+号连接,不能有空格
dimkeyword'传入关键词
dimobjFso'定义全局变量
dimCounter'定义全局变量,搜索结果的数目
'*****************初始化**************************************
PrivateSubClass_Initialize
 SetobjFso=Server.CreateObject("Scripting.FileSystemObject")
 Counter=0'初始化计数器
EndSub
'************************************************************
PrivateSubClass_Terminate
 SetobjFso=Nothing
EndSub
'**************公有成员,调用的方法***************************
FunctionSearch
 Folders=split(Folders,"+")'转化为数组
 keyword=trim(keyword)'去掉前后空格
 ifkeyword=""then
 Response.Write("<fontcolor='red'>关键字不能为空</font><br/>")
exitFunction
 endif
 '判断是否包含非法字符
 flag=instr(keyword,"")orinstr(keyword,"/")
 flag=flagorinstr(keyword,":")
 flag=flagorinstr(keyword,"|")
 flag=flagorinstr(keyword,"&")
 
 ifflagthen'关键字中不能包含/:|&
 Response.Write("<fontcolor='red'>关键字不能包含/:|&</font><br/>")
ExitFunction'如果包含有这个则退出
 endif
 '多路径搜索
 dimi
 fori=0toubound(Folders)
 CallGetAllFile(Folders(i))'调用循环递归函数
 next
 Response.Write("共搜索到<fontcolor='red'>"&Counter&"</font>个结果")
EndFunction
'***************历遍文件和文件夹******************************
PrivateFunctionGetAllFile(Folder)
 dimobjFd,objFs,objFf
 SetobjFd=objFso.GetFolder(Folder)
 SetobjFs=objFd.SubFolders
 SetobjFf=objFd.Files
 '历遍子文件夹
 dimstrFdName'声明子文件夹名
 '*********历遍子文件夹******
 onerrorresumenext
 ForEachOneDirInobjFs
 strFdName=OneDir.Name
'系统文件夹不在历遍之列
 IfstrFdName<>"Config.Msi"EQVstrFdName<>"RECYCLED"EQVstrFdName<>"RECYCLER"EQVstrFdName<>"SystemVolumeInformation"Then
 SFN=Folder&""&strFdName'绝对路径
 CallGetAllFile(SFN)'调用递归
EndIf
 Next
 dimstrFlName
 '**********历遍文件********
 ForEachOneFileInobjFf
 strFlName=OneFile.Name
'desktop.ini和folder.htt隐藏的系统文件不在列取范围
 IfstrFlName<>"desktop.ini"EQVstrFlName<>"folder.htt"Then
 FN=Folder&""&strFlName
 Counter=Counter+ColorOn(FN)
EndIf
 Next
 '***************************
 '关闭各对象实例
 SetobjFd=Nothing
 SetobjFs=Nothing
 SetobjFf=Nothing
EndFunction
'*********************生成匹配模式***********************************
PrivateFunctionCreatePattern(keyword)
 CreatePattern=keyword
 CreatePattern=Replace(CreatePattern,".",".")
 CreatePattern=Replace(CreatePattern,"+","+")
 CreatePattern=Replace(CreatePattern,"(","(")
 CreatePattern=Replace(CreatePattern,")",")")
 CreatePattern=Replace(CreatePattern,"[","[")
 CreatePattern=Replace(CreatePattern,"]","]")
 CreatePattern=Replace(CreatePattern,"{","{")
 CreatePattern=Replace(CreatePattern,"}","}")
 CreatePattern=Replace(CreatePattern,"*","[^/]*")'*号匹配
 CreatePattern=Replace(CreatePattern,"?","[^/]{1}")'?号匹配
 CreatePattern="("&CreatePattern&")+"'整体匹配
EndFunction
'**************************搜索并使关键字上色*************************
PrivateFunctionColorOn(FileName)
 dimobjReg
 SetobjReg=newRegExp
 objReg.Pattern=CreatePattern(keyword)
 objReg.IgnoreCase=True
 objReg.Global=True
 retVal=objReg.Test(FileName)'进行搜索测试,如果通过则上色并输出
 ifretValthen
 OutPut=objReg.Replace(FileName,"<fontcolor='#FF0000'>$1</font>")'设置关键字的显示颜色
'***************************该部分可以根据需要修改输出************************************
 OutPut="<ahref='#'>"&OutPut&"</a><br/>"
 Response.Write(OutPut)'输出匹配的结果
'*************************************可修改部分结束**************************************
 ColorOn=1'加入计数器的数目
 else
 ColorOn=0
 endif
 SetobjReg=Nothing
EndFunction

时间: 2024-10-09 05:03:54

一个硬盘文件搜索的Asp源码的相关文章

构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(32)-swfupload多文件上传[附源码]

原文:构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(32)-swfupload多文件上传[附源码] 文件上传这东西说到底有时候很痛,原来的asp.net服务器控件提供了很简单的上传,但是有回传,还没有进度条提示.这次我们演示利用swfupload多文件上传,项目上文件上传是比不可少的,大家这个心里都知道.主要提供给源码说明及下载 最终效果图: SWFUpload的特点: 1.用flash进行上传,页面无刷新,且可自定义Flash按钮的样式; 2.可以在浏

磁盘ID在ASP源码防拷贝中的应用

自从ASP(Active Server Pages)问世以来,因其可以创建健壮易于维护.与平台无关的应用系统,ASP技术受到了越来越多网络程序员的喜爱,使用ASP从事WEB开发的人也越来越多.但ASP只是一种非编译型的.在服务端运行的脚本语言,采用明文(plain text)方式来编写,即使采用了ASP加密程序对ASP源码进行加密,也不一定能保证发布到运行环境中去的ASP应用程序不被非法拷贝.对于高权限的管理员,可以轻而易举从服务器端拷贝出ASP程序应用到别的非授权网站.这样给ASP应用商业化带

磁盘ID在ASP源码防拷贝中的应用(z)

磁盘ID在ASP源码防拷贝中的应用(孔祥军.苏悦娟 2001年07月26日 17:07) 自从ASP(Active Server Pages)问世以来,因其可以创建健壮易于维护.与平台无关的应用系统,ASP技术受到了越来越多网络程序员的喜爱,使用ASP从事WEB开发的人也越来越多.但ASP只是一种非编译型的.在服务端运行的脚本语言,采用明文(plain text)方式来编写,即使采用了ASP加密程序对ASP源码进行加密,也不一定能保证发布到运行环境中去的ASP应用程序不被非法拷贝.对于高权限的管

看asp源码的方法及工具20种

众所周知windows平台漏洞百出,补丁一个接一个,但总是补也补不净.我把我所知道的20种看asp源码的方法总结了一下,并且用c#写了个应用程序来扫描这些漏洞,发现虽然大部分的方法已经不起做用,但还是有一些漏网之鱼的:),结果这两天真看到不少站的源代码,包括数据库密码,如果用access的可以把库下载下来,而用sql server的如果不是用udl,dsn等来连接的话,也可以通过tcp/ip网络库连接到数据库,为所欲为呀.先面把这20种方法列在下面: .%81::DATA%2e%2e%41sp+

Carello Web 使 ASP 源码暴露 (APP,缺陷)

web 涉及程序: Carello Web on NT running IIS 描述: Carello Web 使 ASP 源码暴露 详细: Carello Web 是一个支持网络购物的软件.Carello Web 存在一个安全问题使远程攻击者能在系统上建立一个文件,如果这个文件已经存在就会复制一份,并在文件的扩展名之后有点改动.如:123.asp 会改为 123.asp1 由于扩展名改变,文件会以文本形式被攻击者读取.攻击者能通过 ASP 源程序获得系统密码.用法举例: http://char

Python 基于Twisted框架的文件夹网络传输源码_python

由于文件夹可能有多层目录,因此需要对其进行递归遍历. 本文采取了简单的协议定制,定义了五条命令,指令Head如下: Sync:标识开始同步文件夹 End:标识结束同步 File:标识传输的文件名(相对路径) Folder:标志文件夹(相对路径) None:文件内容 每条命令以CMB_BEGIN开始,以CMB_END结束. 客户端需要对接收缓冲做解析,取出一条一条的指令,然后根据指令的Head做相应的处理,比如创建文件夹.写入文件等. 下面是服务端的代码: from twisted.interne

app-想要一个图片合成的APP的源码

问题描述 想要一个图片合成的APP的源码 想要开发个APP,用户可以使用APP进行图片合成,生成一个新的图片,求源码

求一个java的人脸识别系统源码

问题描述 求一个java的人脸识别系统源码 用java语言开发,可以进行人脸识别的程序,算法不要太复杂,能进行简单的人脸识别就行了 解决方案 求人脸识别系统源代码!!! 解决方案二: 一个完整的项目demo http://download.csdn.net/detail/apbbbbb/9525308

java文件输入输出-我该怎么将学生的信息写入到一个硬盘文件里面,新手不理解文件输入输出。

问题描述 我该怎么将学生的信息写入到一个硬盘文件里面,新手不理解文件输入输出. import java.io.FileNotFoundException; import java.io.PrintWriter; import java.util.*; public class PrintWriterTest { //学号.姓名.性别.出生日期.所学专业 private int number; private String name; private String sex; private Str