Version 4.0
March 14, 2011
Home Page
Abbrevia is a compression toolkit for Embarcadero Delphi, C++ Builder, and Kylix. It supports PKZip, CAB, tar, gzip, bzip2 and zlib compression formats, and the creation of self-extracting executables. It also includes visual components that simplify displaying zip files.
Abbrevia 4.0 adds many new features and bug fixes including:
This is a source-only release. It includes design-time and run-time packages for Delphi 6 through Delphi XE, C++Builder 2009, 2010, and XE, and Kylix 3. Kylix 3 does not support Lzma, PPMd, or WavPack decompression.
Abbrevia includes the following packages:
TAbZipBrowse, TAbZipKit, TAbMakeCab, etc.TAbProgressMeter, TAbZipOutline.$LIBSUFFIX is used, so each .bpl/.bpi will have a version number after it corresponding to the compiler version (e.g. 150 for Delphi XE).
The Kylix 3 AbbreviaCLX package includes all of the non-visual runtime units, and the Abbrevia package is not included separately.
To install TurboPower Abbrevia into your IDE:
Support forums are available on the SourceForge project site.
Bug reports can be entered in the bug tracker. If possible please include a small test case that reproduces the issue. Sample files can be attached to the bug report, and confidential data can be emailed to the project administrator.
If you have something you would like to see in the product feel free to add a feature request.
The current source code is available in the Subversion repository. The code here may not be as stable or tested as the official releases, but may include bug fixes or new features not yet included in the downloadable releases.
The repository also includes DUnit tests and the source code to the third-party libraries.
If you want to help make Abbrevia better, there are several ways to get involved. We welcome help with features and bug fixes. Just look in the issue tracker to see what's needed. We're also looking for help for:
Abbrevia is licensed under the Mozilla Public License, version 1.1. It can be used in commercial and closed-source applications provided any changes to Abbrevia units are made available electronically.
The WavPack library used for zipx decompression has its own license, included as "WavPack License.txt". Redistribution requires a copyright notice in your documentation or elsewhere in your distribution. WavPack support can be removed by disabling the UnzipZipxSupport or UnzipWavPackSupport conditional define in AbDefine.inc.
These are the most significant features, fixes and changes made since v3.05. There are many other bug fixes and low-level improvements, the details of which are available in the Subversion log.
Added support for decompressing PKZip files created with bzip2, Lzma, PPMd and WavPack compression. Abbrevia can now read all of the .zipx compression methods besides JPEG. All libraries are statically linked.
Added full Unicode filename support for zips and cabs.
Added support for long filenames in tar archives. Long filenames and symbolic link paths are read and written using the GNU extended headers and the UStar extension. Other extended headers (e.g., POSIX) are no longer lost when modifying a tar. Implemented by Joel Haynie, Scooter Software.
for..in support to TAbArchiveList.AbDetermineArcType can now detect archives with unknown extensions based on their content [3126055].Stream property to TAbZipBrowse/TAbZipper/TAbUnzipper/TAbZipKit non-visual controls that can be used to load an archive from a stream instead of a file.
AbResString unit with string constants. Translations are available in Afrikaans, Dutch, French, German and Russian. Thanks to Henri Hakl, Rudy Velthuis, Hichem Bouksani, Roman Kassebaum and Pavel Koptev.TAbZipView now supports themeing and exposes properties added to TCustomGrid in newer versions of Delphi (Anchors, Bevel*, DrawingStyle, GradientEndColor, GradientStartColor, Touch, OnGesture, OnMouseActivate, OnMouseEnter and OnMouseLeave). The gdsClassic DrawingStyle roughly matches the pre-Delphi 2010 appearance.HostOS property to TAbZipItem and added more values to TAbZipHostOS enumeration based on newer AppNote.txt and Info-ZIP additions.TAbZipView drawing when multiple rows are selected.TAbZipOutline not responding to drag & drop resizing at design-time.OnNeedPassword not using correct password on last try [1093711].
AbUnZipMemory and AbUnZipTempFile conditional defines introduced in v3.05.TAbMeterLink. The ItemProgressMeter/ArchiveProgressMeter properties support TAbMeter directly again.TAbPadLock and implicit (partial) locking while archives are busy. Use an explicit critical section if you access a single archive object from multiple threads.