Xceed Zip Compression Library 是一个高性能的 Zip 和 Unzip 数据压缩库。通过它,可以创建和操作与 Zip 100% 兼容的 Zip 文件,也能在内存中直接压缩/解压数据。它设计提供高度灵活性,并且使用快速的多线程 zip 压缩引擎。
Xceed Zip Compression Library is a high-performance Zip and Unzip data compression library that lets your applications create and manipulate 100% Zip-compatible Zip files as well as compress/uncompress data directly in memory. It's designed to offer the ultimate in flexibility and uses a fast multi-threaded zip compression engine.
大小确实重要!
The Xceed Zip Compression Library 是一个软件组件,它为开发者提供许多有用的,精心设计的压缩和解压缩文件和数据的功能。它最受欢迎的功能是能够创建,阅读和写入 Zip 文件。
该库支持 PKWare 的最新行业标准 PKZip v4.5 zip 文件格式,以及传统的 PKZip v2.04g 格式。由于有新的 Deflate64 压缩算法和消除了 Zip 文件大小和在一个 zip 文件中文件数目的限制,所以可以为开发者提供改进的 Zip 压缩。
Xceed Zip 还提供先进的 BZip2 (BWT) 压缩算法。在很多文件类型中,包括数据库文件和办公文档,比起普通的 Zip Deflate, 它通常能达到 15-20% 的更好压缩比。BZip2 也因为能够最理想的压缩 XML 数据而著名。
ActiveX 技术
ATL 3.0编写,简单且独立的 COM 对象和 ActiveX 控件。
无须外部的压缩动态链接库, MFC DLL 或运行库等。
同时有单线程 (STA) 和多线程 (MTA) 模型设计。
不必将组件置于窗口上,就可以动态实现。
支持多个实例同时运行。
在一个单独的控件中同时支持 Unicode 和 ANSI. 在 Windows NT, 2000 和 XP 上运行时,为了得到最好的性能,该库自动调用 Unicode API.
ActiveX 控件接口内置有所有的常量,枚举和自定义类型。完全支持代码实现、属性目录、帮助以及上下文相关的F1帮助。
在所有的 32 位开发环境下工作,可以使用 ActiveX 控件,包括 VB, VC++, Delphi, C++ Builder, VFP, Office, PB, VO, Web 脚本语言, ASP 和 DCOM 项目。
对于需要 100% 可管理代码的开发者,在兼容 VB.NET 和 C#的同时,在.NET环境下,还需要检查 Xceed Zip,完全面向对象的 Zip, 压缩和FileSystem类库。
压缩 及 Zip 文件技术
快速,低内存使用的压缩引擎。
100% 兼容现有的 PKZip 2.04g 格式。
100% 兼容新的 PKZIP 4.5 格式。
支持 Zip64 文件格式,支持几乎不限大小的创建 Zip 文件 (不超过 4 GB 的上限).
支持 BZip2 (BWT) 压缩算法,以得到在很多通用文件类型,尤其是 XML 数据中,比 Deflate 更好的 15% 到 20% 的压缩比。
BZip2 压缩算法能够很好的压缩 XML 数据。
支持 Deflate64TM 压缩算法,它是一个对普通的 Deflate 改进的行业标准。
Zip 文件可以包含任意数目的文件 (不超过 65535 文件上限).
Xceed Zip 创建的 regular, spanned 和 self-extracting zip 文件可以被任何现有的解压缩应用程序来解压,反之亦然。
存取最新的 zip 扩展文件格式,允许 Unicode 文件名和 NT 文件属性,额外的时间戳和安全权限被保存在 zip 文件中。
不需要修补损坏的 zip 文件。Xceed Zip 自动尝试恢复错误,并报告解压时在 zip 文件中发现的任何矛盾。
主要功能
能够把 Zip 文件或内存缓存到新的或现有的 zip 文件中。
解压文件到硬盘或直接到内存。
能够完全在内存中压缩、解压字符串或实现缓存。
所有的压缩和解压缩模式都支持流和加密。
创建具有 Self-Extractor 模块选项的完全自定义的 zip 文件。
转换 zip 文件的任意类型 (regular, spanned, multi-part, self-extracting 或 spanned self-extracting) 为其它任意类型的 zip 文件。
跨多个磁盘读写 zip 文件。
直接读写多个部分的 zip 文件到硬盘。
从另一个 zip 文件的内容或合并两个 zip 文件到一起来更新一个 zip 文件
可选择后台处理,使你的代码可以在 Xceed Zip 工作时继续执行。
应用组件交互
所有的操作可以随时取消。
能够依据文件以及执行的操作,按照百分比、字节和文件数量,提供状态报告事件。能够轻松地对应用程序添加进度条。
当一个文件进行压缩,解压缩,更新,删除等操作时,事件被触发。
通知应用程序何时和为什么一个特定的文件不能被处理。
当一个文件被压缩或解压会覆盖已有的文件时通知应用程序。你的应用程序可以选择覆盖它或跳过。你也可以选择重命名文件。
为当前被处理的文件提供完全的文件信息。
你的应用程序可以获得如一个文件已完成的压缩比例,压缩大学和其他可用信息。
当跨多个磁盘来读或写 zip 文件,如果它应当提示用户插入一个特定的磁盘,通知你的应用程序。
许多事件具有可修改参数,以便你的应用程序在压缩,解压缩,转换文件时来改变文件参数或规格。
Unused 事件可以避免被触发以增强性能。
当临时 zip 文件正在被拷贝到其最终目的地时,提供反馈给用户。
当 zip 文件的中心目录正在被写入时,提供反馈给用户。
Zip 文件操作功能
在一个 zip 文件中获取全局信息。
通过收集对象获取一个 zip 文件包含的详细名单。
通过事件获取一个 zip 文件包含的详细名单。
从一个 zip 文件中删除文件。
当文件已经证实成被功的压缩后就删除它们。
测试一个 zip 文件及其内容的完整性。
基于文件的属性,大小,版本资源和日期来处理或排除文件——或者创建你自己的个性化包含/排除过滤器。
通配符预览——在开始压缩或解压前正确的找出哪些文件会符合你的通配符和过滤器。
压缩预览——在开始实际压缩操作前获取压缩文件大小。也可以提供压缩整组文件的统计数字。
在 zip 文件中为单独的文件添加和获取注释。
获取和设置整个 zip 文件的注释。
能够自动终止,以便其他应用程序在处理时不会中断。
在写 zip 文件到磁盘前清空磁盘。
指明剩余空间的数量,以在第一个磁盘中放置一个 spanned zip 文件组。
当文件跨区时,丢弃未指明剩余空间数量的磁盘。
压缩整个目录及其内容。
只处理 zip 文件或磁盘上已有文件中更新过的文件。
提供全局的或基于一个个文件的加密和解密的密码。
控制哪些类型的文件可以不经压缩存储到 zip 文件中。
为每个文件控制什么路径信息被存储到 zip 文件中。
在 zip 文件中存储一个驱动器的卷标签并在其解压缩时恢复。
压缩系统的和隐藏的文件,改写只读文件。
允许压缩那些当前打开被其它程序进行写操作的文件。
限制操作有时间戳的文件和文件大小在特定范围内的文件。
在 zip 文件支持中长文件名, UNC 路径和存储 Unicode 文件名。
操作自压缩 zip 文件而不用中断他们的自压缩功能。
文件在压缩或解压时可以重命名文件和它们的路径。
在一个 zip 文件中重命名文件。
在一个 zip 文件中改变文件参数 (注释,时间戳,文件属性)。
控制压缩文件的压缩总量。
指明文件被解压到何处的路径。
使用通配符来指明要处理的文件。
在临时复制的 zip 文件中工作,以获得最大限度的安全。
指明创建的临时文件的位置。
基于文件属性或参数,在zip 文件更新、合并或转换时,过滤出文件。
把存档文件的日期设定为文件中包含的最新日期。
文件和示例
提供 MSDN 类型 的 HTML 格式的完善的,全面的文档,它是完全的上下文相关,在IDE上按下F1键时,会打开相关主题的手册。
为各种语言充分注释示例应用程序,包括VB, Delphi, 使用 ATL 和 MFC 的 Visual C++, C++ Builder 和 Active Server Pages.
直接 DLL API 访问
完全可用的 16 位支持
从 2001年5月11日起, 16 位版本的 Xceed Zip Compression Library 不再被自动列入软件包。如果你对 16 位的版本感兴趣,只需简单的发送一个请求到 support@xceedsoft.com 我们就会给你发送 16 位的版本的软件包。如果你需要一个注册版,不要忘记在你的请求中包含你的注册号码。
包含一个 16 位版本,它提供一个 16 位的 VBX 和 Delphi 1 VCL. 这个版本工作在 VB3, VB4/16, Delphi 1, VC++ 1.52 及其他 16 位语言中。
该 16 位版本支持 Xceed Zip v4.5 特性的大子集,包括 Xceed Zip Self-Extractor Module 的 16 位版本。
Size does matter!
The Xceed Zip Compression Library is a software component that provides developers with a host of useful, carefully designed functions for compressing and uncompressing files and data. It's most popular functionality is the ability to create, read and write Zip files.
The library supports PKWare's latest industry standard PKZip v4.5 zip file format as well as the traditional PKZip v2.04g format, providing developers with improved Zip compression thanks to the new Deflate64 compression method and removing limitations on Zip file size and the number of files in a zip file.
Xceed Zip also offers the advanced BZip2 (BWT) compression method which regularly achieves a 15-20% better compression ratio than regular Zip Deflate on many file types including database files and office documents. BZip2 is also famed for optimally compressing XML data.
Features
ActiveX technology
- A single fully self-contained COM object and ActiveX control written with ATL 3.0.
- Requires no external compression DLLs, MFC DLLs or runtime libraries.
- Both single-threaded (STA) and multi-threaded apartment (MTA) model design.
- Instantiate the component dynamically without putting it on a form.
- Supports multiple instances running simultaneously.
- Supports both Unicode and ANSI in one single control. The library automatically uses Unicode API calls for best performance when running on Windows NT, 2000 and XP.
- ActiveX control interface has all constants, enumerations and types built-in. Code completion, property categories, help strings and context-sensitive F1-help fully supported.
- Works with all 32-bit development environments that can use ActiveX controls, including VB, VC++, Delphi, C++ Builder, VFP, Office, PB, VO, Web scripting languages, ASP and DCOM projects.
- Also compatible with VB.NET and C#. For developers that require 100% managed code, check out Xceed Zip for .NET, our fully object-oriented Zip, Compression and FileSystem class library.
Compression & Zip file technology
- Fast, low memory usage compression engine.
- 100% compatible with the existing PKZip 2.04g format.
- 100% compatible with the new PKZIP 4.5 format. (New in v5.0)
- Supports the Zip64 zip file format allowing the creation of Zip files of practically unlimited size (no more 4 GB limit). (New in v5.0)
- Supports the BZip2 (BWT) compression method for 15 to 20% better compression than Deflate on many popular file types, especially XML data.
- BZip2 compression method is excellent for compressing XML data
- Supports the Deflate64TM compression method, an industry standard improvement to regular Deflate. (New in v5.0)
- Zip files can contain any number of files (no more 65535 file limit). (New in v5.0)
- Regular, spanned and self-extracting zip files created by Xceed Zip can be used by any of today's existing unzipping applications, and vice-versa.
- Stores and retrieves the latest zip file format extensions, allowing Unicode filenames and NT file attributes, extra time stamps and security permissions to be stored in the zip file.
- No need to repair corrupted zip files. Xceed Zip automatically tries to recover from errors and reports any inconsistencies found in the zip file while unzipping.
Major operations
- Zip files or memory buffers into new or existing zip files.
- Unzip files to disk or directly to memory.
- Compress and decompress strings or buffers completely in memory.
- All compression and decompression modes support streaming and encryption.
- Create fully customized self-extracting zip files with the optional Self-Extractor Module.
- Convert any type of zip file (regular, spanned, multi-part, self-extracting or spanned self-extracting) into any other type of zip file.
- Reads and writes zip files that span multiple disks.
- Reads and writes multi-part zip files directly to hard drive.
- Update one zip file from another one's contents or merge two zip files together.
- Optional background processing so your code can continue execution while Xceed Zip is working.
Application-component interactivity
- All operations can be aborted at any time.
- Provides status report events on a file-by-file basis as well as on the entire operation being performed, with percentages, byte and file counts. Easily add any kind of progress bar to your apps.
- Events are triggered whenever a file is being zipped, unzipped, updated, deleted, etc.
- Notifies your application when and why a specific file cannot be processed.
- Notifies your application when a file being zipped or unzipped is about to overwrite an existing file. Your application can then choose to overwrite it or skip it. You can also rename files.
- Provides complete file information for the current file being processed.
- Your application receives info such as a file's achieved compression ratio, compressed size and other info as it becomes available.
- Informs your application that it should prompt the user to insert a specific disk when reading or writing zip files that span multiple disks.
- Many events have modifyable parameters to allow your application to change file parameters or specifications as the files are being zipped, unzipped, converted, etc.
- Unused events can be prevented from being triggered for increased performance.
- Provide feedback to the user when the temporary zip file is being copied to its final destination. (New in v5.0)
- Provide feedback to the user when the zip file's central directory is being written. (New in v5.0)
Zip file manipulation functionality
- Obtain global information on a zip file.
- Obtain a detailed list of a zip file's contents via a collection object.
- Obtain a detailed list of a zip file's contents via events.
- Delete files from within a zip file.
- Delete files after they have been successfully and verifiably zipped.
- Test the integrity of a zip file and its contents.
- Process or exclude files based on file attributes, sizes, version resources and dates - or create your own custom include/exclude filters.
- Wildcard previewing - find out exactly which files will match your wildcards and filters before you start zipping or unzipping.
- Compression previewing - obtain the compressed file sizes before starting the actual zipping operation. Statistics on the entire group of files to be zipped are also provided.
- Add and retrieve comments for individual files in the zip file.
- Get and set the global zip file comment.
- Automatic full yield so other applications do not halt during processing.
- Clear disks before writing the zip file to them.
- Specify the amount of free space to leave on the first disk of a spanned zip file set.
- Reject disks without specified amount of free space on them when spanning.
- Compress entire directories and their contents.
- Process only files newer than those already in the zip file or existing on disk.
- Provide global encryption and decryption passwords or on a file-by-file basis.
- Control which types of files are stored in the zip file without compression.
- Control what path information is stored in the zip file for each file.
- Store a drive's volume label in the zip file and restore it during unzipping.
- Zip up system and hidden files, overwrite read-only files.
- Allow zipping files that are currently open for write operations by other processes.
- Limit operation to files with timestamps and file sizes within specified ranges.
- Supports long filenames, UNC paths and stores Unicode filenames in the zip file.
- Manipulate self-extracting zip files without disturbing their self-extracting ability.
- Rename files and their paths as they are being zipped or unzipped.
- Rename files in a zip file.
- Change file parameters (comment, time stamps, file attributes) in a zip file.
- Control the amount of compression applied to files being zipped.
- Specify the path where files will be uncompressed to.
- Specify files to process using wildcards.
- Work on temporary copies of zip files, for maximum safety.
- Specify the location of where temp files are created.
- Filter out files during a zip file update, merge or conversion based on any file attributes or parameters.
- Set the date of the archive file to the most recent date among the files it contains. (Brought back in v5.0)
Documentation and samples
- Complete, comprehensive documentation provided in an MSDN style HTML format which is fully context-sensitive so that pressing F1 on a keyword in your IDE opens up the manual to the correct relevant topic.
- Fully commented sample applications for various languages, including VB, Delphi, Visual C++ with ATL and MFC, C++ Builder and Active Server Pages.
Direct DLL API access
- The library's single DLL can also be accessed as a standard 32-bit DLL through it's exported API.
- All properties, methods and events are exported.
- All exported API calls involving string parameters come in single, wide character and Unicode versions.
- Events can be handled either by callback functions or by windows messages.
Complete 16-bit support available
- As of May 11th, 2001, the 16-bit edition of the Xceed Zip Compression Library is not automatically included in the package. If you are interested in a 16-bit version, simply send a request to support@xceedsoft.com and we will send you the 16-bit package. If you want a registered version, don't forget to include your registration number in your request.
- Includes a 16-bit edition which provides a 16-bit VBX and Delphi 1 VCL. This edition works with VB3, VB4/16, Delphi 1, VC++ 1.52 and other 16-bit languages.
- The 16-bit edition supports a large subset of Xceed Zip v4.5's features, and includes a 16-bit edition of the Xceed Zip Self-Extractor Module.