我需要使用 Delphi 将多个文件压缩到一个存档中。我更喜欢使用免费软件组件或开源组件,因为我非常便宜 :-)
我的主要要求是:
- 可以加密存档
- 可以创建任何拥有 WinZip 副本的人都可以打开的通用存档
有人对他们使用过的组件有建议吗?请随时建议免费以及商业组件/库。
我需要使用 Delphi 将多个文件压缩到一个存档中。我更喜欢使用免费软件组件或开源组件,因为我非常便宜 :-)
我的主要要求是:
有人对他们使用过的组件有建议吗?请随时建议免费以及商业组件/库。
也许DelphiZip是您正在寻找的,它似乎也支持加密,并且与 WinZip 兼容。它是在 LGPL 下发布的。
KaZip是一个开源的 ZIP 归档器。这是它的描述:
KAZIP 是快速、简单的 ZIP 归档器和 dearchiver,它使用最流行的 ZIP 格式。Inflate - Deflate zip 压缩格式(不支持加密,不支持多磁盘)。 KAZip 完全基于 Delphi VCL -没有 DLL、ActiveX 或其他外部库.KAZip 完全面向流,因此您可以仅在内存中处理数据而无需创建临时文件等。如果您需要在应用程序中添加 zip-unzip 功能,KAZIP 是正确的解决方案。附加 ZipListView 和 ZipTreeView 组件,便于可视化。功能:Zip-Unzip 使用 Inflate-DeflateBZip2 解压来自 Edison Mera Menndez 的 BZIP2 单元的使用。功能:添加文件、文件夹、流;选择、取消选择、检查;提取到文件和流;删除和重命名文件创建、删除和重命名文件夹测试、修复许多新属性和方法,提高速度。包括一个非常复杂的 Zip 浏览器演示应用程序
It is not compatible with Delphi 2009 yet, but with some minor changes in the source code, you can make it work in Delphi 2009 too. Actually, that's what I did.
Regards
我推荐 ComponentAce 的 69 美元ZipForge。
我正在使用来自madCollection的madZip
我很惊讶还没有人提到 JclCompression——它是著名的 Jedi Code Library (JCL) 的一部分。这是单元本身的视图:http: //jcl.svn.sourceforge.net/viewvc/jcl/trunk/jcl/source/common/JclCompression.pas ?view=markup
请注意,它与 7-zip DLL 版本 4.64 兼容 - 较新的版本可能不向后兼容...
您可以为 Pascal 使用 7zip (LZMA) 绑定(与 Delphi 兼容): http: //www.birtles.org.uk/programming/
要查看的另一个 Delphi 资源是InnoSetup。源代码是可用的,稍加工作可能会让您在尝试做的事情上占得先机。有一个选项可以创建与 WinZip 兼容的自解压 zip 档案,
我的想法不是使用该程序,而是使用他的源代码作为起点,因为它经过了非常严格的测试并且非常可靠。
有infozips zip32 和 unzip32 dll。它们可以在 Delphi(甚至 Visual Basic)中使用,两者都有接口单元/模块。界面没有我希望的那么好,但它可以工作。