明天在网上看到一篇利用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出来的告诉我一声.
|