日期:2013-08-30  浏览次数:20835 次

明天在网上看到一篇利用winrar来进行在线压解操作RAR压缩包的文章,自己动手作了一个,发现还不错

原理其实也很简单就是将winrar里的rar.exe上传到自己的web下,然后写一个ASP用wscript.shell组件运行rar.exe进行对RAR的操作.

据说wscript.shell有许多的虚拟主机都不能用的,但是我在几个朋友的主机里试过都可行.有点奇怪...

下面是正题,源码说话吧,我的废话太多了..

关键代码:
  server.createobject("wscript.shell").exec(server.mappath(".") & "\rar.exe 参数").stdout.readall

关于rar.exe的参数可以用rar.exe -h或是直接运行rar.exe得到..

例如:
  将当前目录下的所有文件(包括子文件夹)压缩到webroot.rar里.代码如下:
  server.createobject("wscript.shell").exec(server.mappath(".") & "\rar.exe a webroot.rar . -r").stdout.readall


显示包文件列表/压缩/解压都可以操作,只是删除包里的文件不能运行,真是奇怪..试了好久都得不出结果.谁KO出来的告诉我一声.