|
Description
Universal Extractor is a program do to exactly what it says: extract files from any type of archive, whether its a simple zip file, an installation program (like Wise or NSIS), or even a Windows Installer (.msi) package. This application is not intended to be a general purpose archiving program. It will never replace WinRAR, 7-Zip, etc. What it will do is allow you to extract files from virtually any type of archive, regardless of source, compression method, etc. The original motivation behind this project was to create an easy, convenient way to extract files from installation packages, such as Inno Setup or Windows Installer packages, without pulling up a command line every time.
When a file is passed to UniExtract, it begins by scanning the file with TrID. If the file format matches one of the supported non-executable formats listed below, it immediately begins extraction from the archive. If it's an executable file, it calls PEiD to analyze the file signature. If the signature indicates that it's a supported format, then it attempts to begin extraction. If it is not a recognized signature, it will try running it through 7-Zip and UnZip as default cases. If 7-Zip or UnZip recognizes it, it will be extracted; otherwise, UniExtract displays an error message and exits.
Note: Filetype scanning with TrID is new as of v1.5. Older versions relied on the file extension to identify the filetype. This behavior is still used if the TrID scan cannot determine the filetype.
If the filetype is supported, UniExtract begins by checking for a valid destination directory and recording the directory size. If necessary, a new directory will be created (with a directory size of zero). UniExtract then spawns a shell and calls the supporting binary to begin extracting files from the selected archive to the destination directory. After completion, UniExtract checks the size of the subdirectory to determine if extraction was successful; if the size is greater than the initial size, UniExtract assumes success and exits. If extraction fails, UniExtract notifies the user and leaves a log file (uniextract.log) that (should) contain any error messages.
|