1、下载sevenzip.pas,添加到lib路径
2、把7z.dll复制到你工程的目录下
3、例子代码
procedure Encode_7z( Source:TStream;Dest:TStream );
var
Arch: I7zOutArchive;
tmsStream:TMemoryStream;
begin
Arch := CreateOutArchive(CLSID_CFormat7z);
Arch.AddStream( Source, soReference, faArchive, CurrentFileTime, CurrentFileTime, '1.bmp', false, false);
SetCompressionLevel(Arch, 5);
Arch.SaveToStream(Dest);
end;
procedure Decode_7z( Source:TStream;Dest:TStream );
var
i:Integer;
tmsStream:TMemoryStream;
begin
with CreateInArchive(CLSID_CFormat7z) do
begin
OpenStream( T7zStream.Create( Source,soReference ) );
for i := 0 to NumberOfItems - 1 do
if not ItemIsFolder[i] then
ExtractItem(i, Dest, false);
end;
end;
//压缩
procedure TForm1.btn1Click(Sender: TObject)