如何使用Delphi将多个文件压缩到一个存档中

时间:2008-12-30 15:53:56

标签: delphi compression

我需要使用Delphi将多个文件压缩到一个存档中。我更喜欢使用免费软件组件或开源组件,因为我非常便宜: - )

我的主要要求是:

  1. 可以加密存档
  2. 可以创建可以使用WinZip副本
  3. 打开的常用档案

    有没有人对他们使用过的组件有什么建议?请随时建议免费和商业组件/库。

8 个答案:

答案 0 :(得分:8)

也许DelphiZip正是您所寻找的,它似乎也支持加密,并且与WinZip兼容。它是在LGPL下发布的。

答案 1 :(得分:4)

KaZip是一个开源的ZIP存档程序。这是它的描述:

  

KAZIP是一款快速,简单的ZIP存档程序   dearchiver使用最流行的ZIP   format.Inflate - 缩小zip   压缩格式(无加密   支持,没有多磁盘   支持).KAZip完全基于   Delphi VCL - 没有DLL,ActiveX或其他   外部图书馆 .KAZip是完全的   流导向所以你可以处理   数据仅在内存中而不创建   临时文件等。如果需要   添加zip-unzip功能到您的   申请,KAZIP是正确的   解。额外的ZipListView和   ZipTreeView组件易于使用   visualisation.Functionality:拉链解压   使用Inflate-DeflateBZip2解压缩   通过使用BZIP2单位   Edison Mera Menndez.Functions:添加   文件,文件夹,流;选择,   取消选择,检查;提取到   文件和流;删除和重命名   filesCreate,删除和重命名   foldersTest,RepairMany新属性   和方法,提高速度。非常   复杂的Zip Browser演示应用程序   包括在内

它与Delphi 2009不兼容,但是在源代码中有一些细微的变化,你也可以在Delphi 2009中使用它。实际上,这就是我所做的。

此致

答案 2 :(得分:3)

我建议使用ComponentAce的$ 69 ZipForge

答案 3 :(得分:3)

我正在使用madZip

中的madCollection

答案 4 :(得分:3)

我很惊讶没有人提到过JclCompression--它是众所周知的绝地代码库(JCL)的一部分。 以下是单位本身的视图:http://jcl.svn.sourceforge.net/viewvc/jcl/trunk/jcl/source/common/JclCompression.pas?view=markup

请注意,它与7-zip DLL版本4.64兼容 - 较新版本可能无法向后兼容...

答案 5 :(得分:2)

你可以使用Pasz的7zip(LZMA)绑定(与Delphi兼容):http://www.birtles.org.uk/programming/

答案 6 :(得分:2)

要查看的另一个Delphi资源是InnoSetup。源代码是可用的,通过一些工作可能会让您了解您的尝试。可以选择创建与WinZip兼容的自解压zip存档

我的想法不是使用该程序,而是使用他的源作为起点,因为它经过了非常严格的测试和非常可靠。

答案 7 :(得分:1)

infozips zip32和unzip32 dll。它们可以从Delphi(甚至是Visual Basic)中使用,两者都有接口单元/模块。界面不如我所希望的那样好,但它确实有效。

相关问题