ASP网页编程之ASP在线举行RAR紧缩息争紧缩源码教程
使用filesystemobject,可以对服务器上的文件进行操作,浏览、复制、移动、删除等。有ado的支持,asp对数据库的操作非常得心应手。你甚至可以像使用本地数据库那样,管理远程主机上的数据库,对表格、记录进行各种操作。本文经由过程利用RAR.EXE和CMD.EXE这两个文件,在ASP编程中完成在线紧缩与解紧缩网站中的文件的功效。完成办法复杂,程序代码少,可供有用编程时自创利用。特别是在具有本人的服务器的情形下极为有用和便利。以上程序在Windows2000Sever及IIS5.0下运转经由过程。起首要上传一个WINRAR的解压程序,就是WINRAR本人的解压程序,只必要它的中心程序RAR.EXE这个文件就能够了,在WINRAR的安装目次里能够找到。然后要上传一个实行RAR.EXE的程序CMD.EXE这个是WINDOWS操纵体系里的程序,在体系盘WINNT/SYSTEM32文件夹中能够找到。上传完这两个文件后,就必要编写一些程序代码来完成紧缩与解紧缩。
无妨将完成紧缩功效的文件取名为ZIP.ASP,完成解紧缩功效的文件取名为UNZIP.ASP。
程序代码中包括了WINRAR这个使用程序的命令行语法,上面复杂先容一下:
WinRAR<命令>-<开关1>-<开关N><紧缩文件><文件...><@列表文件...><解压路径>
命令要WinRAR运转的字符组合代表功效。
开关切换操纵指定范例,紧缩强度,紧缩文件范例,等等的界说。
紧缩文件要处置的紧缩文件名。
文件要处置的文件名。
列表文件列表文件是包括要处置文件称号的纯文本。文件名应当在第一卷启动。能够在列表文件中利用//字符后增加正文。比方,你能够包括两列字符串创立backup.lst:c:workdoc*.txt//备份文本文档c:workimage*.bmp//备份图片c:workmisc并接着运转:winrarabackup@backup.lst你能够在命令行中同时指定一般的文件名和列表文件名。
解压路径只与命令e和x,搭配利用。指出解压文件增加的地位。假如文件夹不存在时,会主动创立。
字母命令列表:
a增加文件到紧缩文件c增加紧缩文件正文
d从紧缩文件删除文件e从紧缩文件解压紧缩,疏忽路径
f革新紧缩文件中的文件i在紧缩文件中查找字符串
k锁定紧缩文件m移动文件和文件夹到紧缩文件
r修复受损的紧缩文件rc重修丧失的卷
rn重定名紧缩文件rr增加数据恢复纪录
rv创立恢复卷s转换紧缩文件成为自解压文件范例
s-删除自解压模块t测试紧缩文件
u从紧缩文件中更新文件x以完全路径称号从紧缩文件解压紧缩
实在程序代码中的关头的地方就是用Server.CreateObject("Wscript.Shell")来实行CMD.EXE,CMD.EXE运转RAR.EXE经由过程WINRAR的命令来实行解紧缩文件与紧缩文件的。
程序清单
ZIP.ASP程序清单:
<%
main文件夹中包括cmd.exerar.exe比方:要紧缩的文件(*.mdb)
紧缩后的寄存目次为maindata.rar
onerrorresumenext
unzip_path=Server.mappath("main")&""
SetWshShell=server.CreateObject("Wscript.Shell")
IsSuccess=WshShell.Run("winrara"&unzip_path&"data
"&unzip_path&"*.mdb",1,False)
WinRAR<命令>-<开关1>-<开关N><紧缩文件><文件...><@列表文件...>
<解压路径>
命令:A-增加到紧缩文件中
ifIsSuccess=0Then
Response.write"命令乐成实行!"
else
Response.write"命令实行失利!权限不敷大概该程序没法运转"
endif
iferr.number0then
Response.Write"<p>毛病号码:"&Err.number
Response.Write"<p>缘故原由:"&Err.description
Response.Write"<p>毛病"&Err.Source
Response.Write
endif
%>
UNZIP.ASP程序清单:
<%
main文件夹中包括cmd.exerar.exe要解紧缩的文件(*.rar)
解紧缩后的寄存目次为main
onerrorresumenext
unzip_path=Server.mappath("main")&""
SetWshShell=server.CreateObject("Wscript.Shell")
IsSuccess=WshShell.Run("winrarx-r-o+"&unzip_path&"*.rar
"&unzip_path&"",1,False)
WinRAR<命令>-<开关1>-<开关N><紧缩文件><文件...><@列表文件...>
<解压路径>
命令:X-从紧缩文件中全路径解压文件
开关:-R-连同子文件夹
开关:-O+-掩盖已存在的文件
开关:-O--不掩盖已存在的文件
ifIsSuccess=0Then
Response.write"命令乐成实行!"
else
Response.write"命令实行失利!权限不敷大概该程序没法运转"
endif
iferr.number0then
Response.Write"<p>毛病号码:"&Err.number
Response.Write"<p>缘故原由:"&Err.description
Response.Write"<p>毛病"&Err.Source
Response.Write
endif
%>
想法是和程序员的想法不一样的.至于为什么.大家去想一想.跟心理学有关的 Request:从字面上讲就是“请求”,因此这个是处理客户端提交的东东的,例如Resuest.Form,Request.QueryString,或者干脆Request("变量名") 学习是为了用的,是为了让你的程序产生价值,把握住这个原则会比较轻松点。除此之外,课外时间一定要多参加一些社会实践活动,来锻炼自己的能力。 我就感觉到ASP和一些常用的数据库编程以及软件工程方面的思想是非常重要的。我现在也在尝试自己做网页,这其中就用到了ASP,我想它的作用是可想而知的。 从事这个行业,那么你可以学ASP语言,简单快速上手,熟练dreamweav排版,写asp代码,熟练photoshop处理图片,打好基础就行了 不是很难但是英文要有一点基础网上的教程很少有系统的详细的去买书吧,另不用专门学习vb关于vbscript脚本在asp教材都有介绍 我就感觉到ASP和一些常用的数据库编程以及软件工程方面的思想是非常重要的。我现在也在尝试自己做网页,这其中就用到了ASP,我想它的作用是可想而知的。 如何更好的使自己的东西看上去很不错等等。其实这些都不是问题的实质,我们可以在实践中不断提升自己,不断充实自己。 最近在学asp,不要问我为什么不直接学.net,因为公司网站是asp做的所以有这个需要,卖了本书asp入门到精通,对里面的六大内置对象老是记不住,还有很多属性和方法看的头晕。
页:
[1]