From Lazarus wiki
Jump to navigationJump to search


This is a conversion of TurboPower Software's Abbrevia library for the Free Pascal Compiler. Abbrevia is a compression toolkit that supports PKZIP 4, Microsoft CAB, TAR, & gzip formats. The package contains visual components that simplify the manipulation of ZIP files.

Status: Alpha, ie it needs testing.

This package was created and generously made available to the open source community by TurboPower Software.

License: MPL 1.1.


The latest release of FpArchive can be found on the Lazarus CCR Files page.

Outdated: Getting the latest source from CVS. Only svn ("Subversion") is being used by now. CVS is no longer being used.

cvs login

(press the Enter key when prompted for a password)

cvs -z3 co fparchive

This package is also available from the Free Pascal Compiler CVS in projects/contrib/abbrevia


Small amounts of 386 assembler.


1. For your project open "Project->Compiler Options->Other unit files" and add the path to the FPArchive units

2. In the "uses" clause of your unit add AbBase, AbBrowse, AbZBrows, AbUnzper, AbArcTyp

3. Create an unzip object:

UnZip := TAbUnZipper.Create(nil);

4. Set the directory where you want to extract the files to:

UnZip.BaseDirectory := '/path/to/extract';

5. To restore directories structure (optional) add this line:

UnZip.ExtractOptions := [eoCreateDirs, eoRestorePath];

6. Try to extract all CSV files (for example) from an archive file:

  UnZip.FileName := '/file/to/';
  on E: Exception do
    //some error handling

7. Free the created object:


See also

  • paszlib is built into FPC/Lazarus. Supports zipping/unzipping .zip files.