LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

ASP在线执行WinRAR压缩文档

admin
2011年4月23日 0:1 本文热度 2830
1.要压中文档名,须下载中文版WinRAR,安装后,再将其中的rar.exe复制出来
2.网络执行,必须将rar.exe与被压缩的文件(或文件夹)置于相同目录下
(网络执行压缩不支持相对路径,如果使用绝对路径,压出来的文档,会按照绝对路径一层一层压进去)
3.下载并注册,在线执行Server端外部程序的组件:ASPEXEC(免费组件)
4.透过ASPEXEC执行→bat档→rar.exe(如此才能压缩出正确路径的压缩档)

例:压缩d:\tmp\tmp_a\tmp_b资料夹中的所有子资料夹及档案(含长中文档名看看)

方法:
1.将rar.exe复制到d:\tmp\tmp_a\下,也就是与tmp_b同层目录
2.建立bat档放在哪里无所谓,就放在D:\addzip.bat(addzip.bat内容如下),
D:
cd tmp\tmp_a
rar.exe a -r tmp_b.zip tmp_b


3.ASP程序码
'利用ASPExec组件执行压缩-------------------------------------
set Executor = Server.CreateObject("ASPExec.Execute")
Executor.Application = "d:\addzip.bat"
strResult = Executor.ExecuteDosApp
Response.Write "<pre>" & strResult & "</pre>"
Set Executor = Nothing


PS:正常写法应该是如下,但不支持相对路径,而如果使用绝对路径,则压缩档内容,就会把所有路径资料夹都包进去。
'利用ASPExec组件执行压缩-------------------------------------
set Executor = Server.CreateObject("ASPExec.Execute")
Executor.Application = "d:\tmp\tmpa\rar.exe"
Executor.Parameters = " a -r tmp_b.zip tmp_b" (使用相对路径,完全无法执行)
Executor.Parameters = " a -r d:\tmp\tmp_a\tmp_b\tmp_b.zip d:\tmp\tmp_a\tmp_b\tmp_b"(使用绝对路径,可以执行,但多了tmp及tmp_a空资料夹)
strResult = Executor.ExecuteDosApp
Response.Write "<pre>" & strResult & "</pre>"
Set Executor = Nothing
============================================================
补充说明:
今日测试在线压缩时,遇到被压缩的文件夹中又包含另一个.zip档,结果可以压缩成功,但无法解压,总是出现「多重压缩损毁...」的问题。
后来将压缩档改成rar格式,就顺利解决,所以上面范例的bat档内容建议
改成:(tmp_b.zip-->tmp_b.rar )
D:
cd tmp\tmp_a
rar.exe a -r tmp_b.rar tmp_b

该文章在 2011/4/23 0:01:40 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2024 ClickSun All Rights Reserved