关于VCLZIP的问题?(100分)

  • 主题发起人 主题发起人 xxjcom2001
  • 开始时间 开始时间
X

xxjcom2001

Unregistered / Unconfirmed
GUEST, unregistred user!
我用VCLZIP2.2解压一个文件时,文件已存在时我想覆盖,可是VCLZIP总是提示出错,
我快疯了。
with UnVclzip do
begin
ZipName := xUnZipFileStr;
ReadZip;
DoAll := True;
DestDir := ExtractFilePath(Application.ExeName) + 'Data';
RecreateDirs := False;
RetainAttributes := True;
ReplaceReadOnly := True;
UnZip;
end;
error: 'cannot create file 'xxxxx/data/xxx.mdb' file'
难道VCLZIP不支持文件覆盖吗?
 
用类似的代码试过了,能正常覆盖。
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
VCLUnZip, VCLZip, StdCtrls;

type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
VCLZip1: TVCLZip;
VCLUnZip1: TVCLUnZip;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
begin
with VclZip1 do
begin
FilesList.Clear;
FilesList.Add('D:/VSource/resize/*.*');
ZipName:='D:/Temp/Test.ZIP';
Zip;
ShowMessage('OK');
end;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
with VclUnZip1 do//用VclZip1就可以了,VclZip已经包含VclUnZip的所有属性和方法了
begin
ZipName:='D:/Temp/Test.ZIP';
ReadZip;
DoAll:=True;
DestDir:='D:/Temp';
RecreateDirs := False;
RetainAttributes := True;
ReplaceReadOnly := True;
UnZip;
ShowMessage('OK');
end;
end;

end.
 
接受答案了.
 
后退
顶部