注册 登录
编程论坛 Delphi论坛

[求助] 关于解压缩的问题

mel 发布于 2006-04-07 09:22, 1146 次点击
是这样,我刚开始学DELPHI不久,希望大家帮帮忙。
我用VCLUnZip1控件做了一个解压程序。已测试成功。
但它只能实现我们普通压缩的功能。
如果我有一个压缩包里面它还包含几个包。我想用一个事件就全能把它都解开该怎么做呢?
我现在的解压程序:只能解一层的。不能解开里面包含的包。

procedure TForm1.Button1Click(Sender: TObject);
var
str:string;
begin
str:=Edit1.Text;
str:=copy(str,LastDelimiter('\',str)+1,maxint);
str:=Copy(str,1,Pos('.',str)-1);
VCLUnZip1.ZipName :=Edit1.Text; //文件名
VCLUnZip1.DestDir :=ExtractFileDir(Edit1.Text)+'\'+str; //解压路径
VCLUnZip1.RecreateDirs := True; //是否创建子目录
VCLUnZip1.DoAll := True;
VCLUnZip1.OverwriteMode := always; //是否覆盖
try
VCLUnZip1.UnZip;
Except
MessageDlg('文件解压缩失败!',mtInformation,[mbOk],0);
Close;
Exit;
end;
showmessage('解压缩成功');
end;
2 回复
#2
pjp2152013-03-28 18:06
vclzip控件就行。把VCLUnZip1换乘VCLZip1
#3
pjp2152013-03-28 18:07
csdn里面有个好例子,vclzip去看看吧
1