TCompress component set V8.1

File and Database Compression Components for Delphi, C++ Builder and Kylix

Contents
What is TCompress?
What can it do?
Registration Information
New in V8.1
Download a copy
Tips & Tricks
Reviews
FAQ!!!
TCompress logo

What's New?

February 2005: TCompress v8.1 and TCompLHA v8.1 released, fixing a small bug affecting backwards-compatibility with key-protected archives.

Download it here.

December 2004: TCompress v8.0 and TCompLHA V8.0 released, incorporating added support for Delphi 8 and Delphi 2005, including .NET operation, and also significant enhancements to handle files and archives up to 8 exabytes in size (subject to OS capabilities). Files for all supported versions of Delphi, Kylix and C++ Builder are provided, including GNU public license support for CLX versions of the TCDBMemo and TCDBImage components.

TurboNote+: Have you downloaded TurboNote+, our award-winning onscreen sticky notes and instant messaging program? Great for developers, great for offices, great for remembering tidbits of information. Or try the freeware version at http://TurboNote.com/TBNINTRO.

Note: If you're specifically looking for LHA and LHArc-compatible compression and archive management, check out our TCompLHA component set. Ideal for backup, security and compressed communications.


Overview

TCompress provides native components for Delphi (including .NET), C++ Builder and Kylix supporting easy creation of multi-file compressed archives, as well as database, file and in-memory compression using streams.

Three compression methods (RLE, LZH1 and LZH5) are built in, with "hooks" for the easy addition of custom compression formats. Compressed file protection using keys is supported.

TCompress also includes drop 'n play components for automatic database blob, image, memo and rich text, based on the VCL's TDBMemo, TDBImage and TDBRichText components.

Bitmap images compress by up to 98% when using LZH5, hence there is a massive saving in disk space and disk or network access when using these components.

TCompress comes with an extensive demonstration, many source examples (including how to make a self-extracting EXE) and comprehensive help and keyword files.

Included in the TCompress set are:

* TCompress component -- general purpose multi-file archive, resource and stream compression. Includes RLE and LZH compression as standard
* TCDBImage component -- uses TCompress to automatically compress/expand database image fields
* TCDBMemo component -- uses TCompress to automatically compress/expand database memo fields
* TCDBRichText component -- uses TCompress to automatically compress/expand rich text database fields
* COMPDEMO application -- extensive full-source drag-and-drop demonstration of multi-file and database field compression
* Numerous source examples -- several example files showing how to use the TCompress event handlers, how to work directly with database blobs (e.g. saving compressed arrays), how to store compressed resources in your EXE or DLL and how to implement custom compression

Key Features

  • Standard support for Delphi 6, 7, 8, 2005, C++ Builder 6 and Kylix 3
  • NATIVE compression -- no mucking about with DLLs, OCXes et al
  • Multi-file compressed archives using the TCompress component
  • Database BLOB (memo, image) compression with TCDBMemo, TCDBRichText and TCDBimage
  • In-memory compression using streams (file/memory/blob/resource to file/memory/blob)
  • Key-based protection of compressed data
  • Self-extracting EXEs and compressed resources in EXEs
  • Thread-safe compression for multi-threaded applications
  • Event hooks for customizable user interaction
  • Built-in RLE (Run-Length Encoding) and LZH (Lempel-Ziv-Huffman) compression
  • Easy to add your own custom compression routines at any time
  • Loads of example source included
  • Full component source code available

TCompress and its companions provide very comprehensive data compression capabilities. Most developers might only need to drop a TCompress component on a form and call its ExpandFile/CompressFile methods in order to create and work with their own multi-file archives...

Others might drop TCDBMemo/TCDBImage/TCDBRichText components on as well and simply interact with them to have text and picture data automatically compressed and decompressed when they are stored in a database.

...and some developers might use the TCBlobfield class to store all kinds of data (sound, numbers, video etc) directly into compressed database blobs.


New in TCompress V8.1

v8.1 has been released to fix a problem in v8.0 where an archive locking key, if used, was no longer backwards-compatible with TCompress v7.0 and earlier. Note: because it has been changed to conform to pre-v8.0 logic, v8.1 will not be able to unlock a key-protected archive created using v8.0.

New in v8.0:

  • Delphi 2005 support (.NET and Win32)
  • Delphi 8 support
  • Support for disk files and archives up to 8 exabytes in size, breaking the 2GB limit which prevailed in earlier versions (NB: the 2GB limit still applies if you work with TMemoryStream or its derivatives)
  • From this release, object files for Delphi 3-5, C++ Builder 2-5 and Kylix 1-2 are no longer provided, due to limitations in their internal TStream class implementations. If you need support for these earlier compilers, please to obtain a special TCompress v7.0 registration.

TCompress v8.1 is a FREE upgrade for Registered Users of TCompress v8.0 or later -- just download the new files and use your existing registration code.

Upgrade price for Registered Users of earlier versions: $US59

If you bought source units for an earlier version, the upgrade fee above includes a source upgrade for any units you own.

For proof of registration, please supply your existing RegName and RegNumber. For proof of source code ownership, please supply the first four source lines of each unit you own.

Crossgrade price for Registered Users of TCompLHA: $US59

To order your upgrade or crossgrade, use our online form or use the form in the Registration section of Compress.hlp.

Come back soon to find about about new TCompress developments and add-ons.


Download TCompress

(this link will do it)


Registration

TCompress Registration and License fee: $US79

Full source code of the Compress unit is also available for an additional $US59.
The Compctrl unit (database components) source is $US59.

On registering, you will receive:

  • Your personal Registration Number, which will eliminate the reminder dialog
  • The latest version downloadable from this Web site
  • Rapid email assistance with any conundrums you encounter when using TCompress
  • Our thanks for supporting quality products for Delphi/Kylix/C++ Builder developers

We accept registration via Mastercard, Visa or bank draft/electronic transfer. You can register online using our secure server or our regular server. Alternatively, just print and fax or email the handy form in the Registration section of the Compress.hlp file.


Tips & Tricks

"I found that best compression rates on large tables are achieved by using first coRLE to squeeze the table quickly into 25% of it's original size and then coLZH to finish it up. It gives the best compression/time ratio and the best compression rate ever: 1,076,152 bytes squeezed down to 39,300bytes."
Bob Heida ()

"I tweaked the Compress method source so it always puts a header in compressed blobs. Having done that, I can now compress multiple items into a single database field -- very useful if you have a range of information to store in a single record."
Lee Slater ()

"Well, I just tested using TCompress with images in Interbase and it works just fine. The trick seems to be to set the TCblobfield size to 1. It's the same you'd write for any other SQL database I think."
Ricky Engberg ()

If you have any tips of your own to add, or particular usage questions, please email .


News and Reviews: What TCompress users have said, and what they're doing with it

"The TCompress component package is ideal for anyone who wants simple, straightforward, compression."
Extract from the TCompress and TCompLHA review at www.Delphi32.com.

"...we were quite frankly amazed with not only the speed, but the compression ratios achieved... To say the least, for ease of use, speed, reliability, functionality, and robustness of implementation, these components are simply outstanding!"
Extract from the TCompress and TCompLHA review by The Think Tank.

"Trouble free, big in, little out tool, love it to bits. Easy to use, rapid response to Delphi changes, what more could I ask? I rarely use anyone else's components but this is one I wouldn't be without."
Gordon Whittam ()

"Once again, thanks for your prompt assistance. Your company's level of support is way above what I have come to expect from the industry!"
Tim at UFO Systems, Australia

"We've really been using this component of yours everywhere!!! It's great, but I still haven't figured out how to get it compress the caffeine in my coffee :)."
Richard at Computer Consulting Group ()

"It took me less than a day to implement your TCompress in a dll that's backwards API compatible with our old library. It is a god-given control! (my P120-NT-box made an overnight compression burn-in test. I stopped it this morning with 15731 successfull compression iterations).... (far better than my good old compress.dll and PK libraries)."
Bob Heida ()

"TCompress is the first component I've found that does what I want it to... and more. I didn't realize you could compress image and memo fields -- that's also a huge advantage for the program I'm working on."
Mike Yui, Queens University ()

"Classy stuff! Well-designed, intuitive. I was able to use it without a glance at any help or instructions."
Lou Garner ()

"It works! And where the previous component took 2.5 seconds to compress a 10K bitmap, TCompress is instantaneous!"
Jon Robertson ()

"I appreciate your support... the product I had to get ready for Comdex is PictureAlbum for Windows (made for Mediaminds Inc)...

"...TCompress continues to perform well for me. I have included it in -- a windows screen saver that uses a powerful image engine for the front end and a database for the backend. Each database is actually 3 files, the database file, a memo file which contains the image blobs, and an index.
"I use TCompress to archive these files together, so that the user need not be bothered with tracking several files. The database file, which is basically an index, is highly compressible with LZH. One of the things I point out to customers is that my archive files can actually GROW if you try to 'zip' them."
Bruce Nunnally ( )


We Highly Recommend:

Webhub Site Automation Components. If you're making interactive or database-driven sites, look no further. Webhub has unmatched power, performance and scalability in the site development world.

-- a fully-fledged design time and end-user report generator.