Skip to content

InstallShield 3 archive extractor

License

Notifications You must be signed in to change notification settings

putara/isdecomp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Introduction

InstallShield 3 archive (*.z) extractor written from scratch. It has the following features stix does not:

  • It is not an MS-DOS program written in Pascal (and German)
  • It does not contain dubious X86 assembly code probably taken from some proprietary software
  • It supports more archive format including multi volume archives

The decompression is done by Mark Adler's blast, a clean-room implementation of the PKWare Compression Library.

Usage

isdecomp [-l][-x [-d DIR]][-t] file.z [files...]

  • -l
    List files
  • -x
    Extract files
  • -d DIR
    Extract files into the specified folder. Use with -x
  • -t
    Test archive

Build

  1. If your Visual C++ doesn't have stdint.h, go get it
  2. Run make (gcc) or nmake /f Makefile.vc (cl)

API

TBA.

Compatibility

Tested with the following systems.

  • WDK 7.1.0 (cl.exe 15.00.30729.207) on Windows 10
  • gcc 5.4.0 on Ubuntu 16.04 LTS

Todos

  • Support multi-volume archives
  • Support self-extracting archives
  • Support encrypted archives (?)
  • Test on a big-endian system (I don't have one)
  • Test with cl.exe /analyze

License

Anything other than blast.c and blast.h is released under the WTFPL.

Acknowledgements

See also

  • Unshield can extract InstallShield 5 CAB files
  • Universal Extractor contains the proprietary i3comp.exe that can compress and decompress InstallShield 3 archive files