服务器用WScript.Shell组件调用winrar中的rar.exe,在代码的同目录要上传cmd.exe和rar.exe
用法:rar.asp?path=要压缩的文件夹&rarname=压缩后的文件名&includefolder=包括子文件夹就不会空
<% '用法http://xx/rar.asp?path=要压缩的文件夹&rarname=压缩后的文件名&includefolder=包插子文件夹就不会空, on error resume next AppPath=server.mappath(".")&"\" '存放RAR.EXE和CMD.EXE的路径 zipfolder=server.mappath(request("path"))&"\" '要压缩的文件或文件夹 rarfile = request("rarname") thispath = server.mappath(".")&"\" if zipfolder<>"" and rarfile<>"" then Set Shell = Server.CreateObject("WScript.Shell") if err.number<>0 then response.write "服务器不支持" response.end end if if request("includefolder")<>"" then cmd= thispath&"cmd.exe /c "&thispath&"rar.exe a -ep1 -r -t -o+ "&thispath&rarfile&" "& zipfolder &"" else cmd= thispath&"cmd.exe /c "&thispath&"rar.exe a -ep1 -t -o+ "&thispath&rarfile&" "& zipfolder &"" end if 'response.write cmd RetCode = Shell.Run(cmd,1, True) response.write "<a href='"&rarfile&"'>"&rarfile&"</a>" if err.number<>0 then response.write "<a href='"&rarfile&"'>"&rarfile&"</a>" else response.write err.description end if else response.write "没有参数" end if %>