首页  编辑  

ZIPTV 压缩控件

Tags: /超级猛料/VCL/Control.控件使用开发和第三方控件/第三方控件/   Date Created:
ZIPTV 压缩解压控件
含源代码。
简单的例子:
uses ztvUnGZip, ztvUnTar;
var
 Fn : string;
 GZip: TUnGZip;
 Tar : TUnTAR;
 TmpPath: string;
begin
 TmpPath := TempPath + '$rcutools%ITEM_CONTENT%apos;;
 if DlgOpen(Fn, '', 'RCU 固件(*.tar.gz)|*.tar.gz|所有文件(*.*)|*.*') then
 begin
   GZip := TUnGZip.Create(nil);
   try
     GZip.ArchiveFile := Fn;
     GZip.FileSpec.Add('test.tar');
     GZip.ExtractDir := TmpPath;
     if GZip.Extract = 0 then
       raise Exception.Create('选择的文件不是合法的固件包或者固件包被损坏!');
   finally
     GZip.Free;
   end;
   /// 提取版本号信息并显示,同时可以验证固件包是否正确
   Tar := TUnTar.Create(nil);
   try
     Tar.ArchiveFile := TmpPath + '\test.tar';
     Tar.FileSpec.Add('savelog');
     Tar.ExtractDir := TmpPath;
     if Tar.Extract = 0 then
       raise Exception.Create('固件包中找不到版本信息,请确认固件包是否合法!');
   finally
     Tar.Free;
   end;
   edtFirm.Text := Fn;
   if DirectoryExists(TmpPath) then DeleteDirectory(TmpPath);
 end;
end;

ZipTV.v6.8.4.Full.Source.For.Delphi.rar (1.1MB)