有人用unit sevenzip; 來解壓縮檔案嗎?
procedure TFormMain.btnCompressClick(Sender: TObject);
var
Arch: I7zOutArchive;
Counter: Integer;
begin
if OpenDialog.Files.Count = 0 then
begin
ShowMessage('請添加檔案');
Exit;
end;
memoOutput.Lines.Append('開始壓縮');
Arch := CreateOutArchive(CLSID_CFormat7z);//這里用7Z格式,沒有問題,但是換成CLSID_CFormatZIP格式。只
能操作一個檔案,如果同時添加多個檔案,在呼叫 Arch.SaveToFile('.\test.zip')時候就人卡死。
Arch.SetProgressCallback(nil, ProgressCallback);
Arch.SetPassword('123456');
for Counter := 0 to OpenDialog.Files.Count - 1 do
Arch.AddFile(OpenDialog.Files[Counter],
ExtractFileName(OpenDialog.Files[Counter]));
SetCompressionLevel(Arch, 5);
SetCompressionMethod(Arch, m7Deflate64);
Arch.SaveToFile('.\test.ZIP');
memoOutput.Lines.Append('完成壓縮');
Arch := nil;
end;
uj5u.com熱心網友回復:
在線等。。。。。。。。。uj5u.com熱心網友回復:
Delphi XE2+中自帶TZipFile類,而且是原生實作,不依賴外部DLL。uj5u.com熱心網友回復:
D7中,Zipb單位,可以簡單操作ZIP。第三方管件VclZip,功能編輯部強大。
uj5u.com熱心網友回復:
報謙,字打錯了。D7中,Zipb單元,可以簡單操作ZIP。
第三方控制元件VclZip,功能比較強大。
uj5u.com熱心網友回復:
沒有用過,建議ZIP格式的加密演算法是否可以換一個,SDK中對于ZIP的加密是不是有特殊說明?SetCompressionMethod(Arch, m7Deflate64);------ZIP中是否支持64的加密演算法?
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/46089.html
標籤:VCL組件開發及應用
