Create self-extracting EXE files.
COMMAND LINE OPTIONS
"ZIP 2 Secure EXE" is a utility program that creates self-extracting EXE files
for Windows 95,98,Me,NT4,2000,XP,Vista,Server 2003,Server 2008, etc... Self-extracting EXE files are executable
programs (EXEs) that contain a ZIP file and the software necessary
to unzip the contents. Users can unzip the contents of a self-extracting
EXE simply by running it like any other program. No other software
What Can You Do With This Program?
Convert a .zip into a encrypted self-extracting EXE using the Advanced Encryption Standard (AES) encryption algorithm.
Backup your security sensitive and important documents.
As long as your password is secret, your files are safe.
Create software installations that only licensed customers will be able to
"ZIP 2 Secure EXE" provides features that may not be found in other self-extractors:
- Up to 256-bit Strong AES Encryption.
Safely encrypts the contents of your ZIP file with 128,
192, or 256-bit AES Encryption. To unzip, a user must provide
the same password that was used when creating the self-extracting
EXE. AES encryption is much stronger than standard ZIP encryption,
which is regarded by security experts as being unsecure. How
strong is 128-bit AES encryption?
- Streaming Technology.
Chilkat's streaming compression and encryption
technology allows it to create an EXE from any size ZIP file under 4GB.
The streaming compression and decryption technology ensures
that it will be possible to unzip the archive on your end-user's
computer, even if that computer has very little memory.
- Progress Indicators.
A progress bar is displayed during the
unzip process so your end-user can decide whether there is time
to get a cup of coffee while his computer is unzipping an especially
large ZIP file.
- Run from DOS in a Batch File.
Pass the Zip filename by itself on the command line to create an
EXE with no user interaction. Customization features may be passed on the command line.
- Run a Setup EXE after Unzipping
When creating the EXE, you may choose to designate a Setup EXE to be run after unzipping. Command line arguments may also be pre-specified to be passed to the Setup EXE.
- Embed a Custom Icon
Icon (.ico) files may be embedded in the self-extracting EXE.
- Customize Title and Caption Text
The title bar and progress caption may be customized.
- Pre-set Unzip Directory
It is possible to create an EXE that extracts to a pre-determined hard-coded absolute directory path, or a temp directory that is automatically chosen at extract time.
- International Filenames
International (Asian, Eastern European, Greek, Middle Eastern, etc.) filenames are supported with the -cp command line option.
- DOS Environment Variables
See this Chilkat blog post for information about using DOS environment variables on the DOS command line.
Options Screen Shot
How to Create a Non-Encrypted Self-Extracting EXE
Use the Browse button to find the ZIP you want to convert into
an EXE, then click Create. If your ZIP was named "myApp.zip",
then an EXE named "myApp.exe" will be created in the
How to Create an AES Encrypted Self-Extracting EXE
Use the Browse button to find the ZIP you want to convert into
an EXE. Select an encryption key-length (128 bit, 192 bit, or
256 bit), enter a password, and then click Create. If your
ZIP was named "myApp.zip", then an EXE named "myApp.exe"
will be created in the same directory. The created EXE will only
unzip if you enter the same password.
How to Create a Self-Extracting EXE that Automatically Unzips to a
Temp Directory and Runs a Setup Program
Enter the name of the setup program
found in the Zip, and check the checkbox as shown in the screen
shot above. As an example, if your Zip contains the files as shown
below, you would enter "setup.exe" in the "Run
this program" dialog text box.
Command Line Options
can be run from programs or scripts with the following command
line options and arguments:
% ChilkatZipSE.exe -autotemp
-encrypt <128 | 192 | 256>
-password <password> ZipFilename
If no options
are provided, a non-encrypted self-extracting EXE is created that
displays a window prompting the user to select a directory for
- Only valid when used in conjunction with the -run option. Causes the self-extracting
EXE to automatically choose a temporary directory for unzipping
without user intervention.
- -run <exe_filename>
- Causes the self-extracting EXE to automatically run an EXE found within
the Zip after unzipping.
- -encrypt <128 | 192 | 256>
- Only valid
in conjunction with the password option. Chooses 128, 192, or
256-bit AES encryption. The default is no encryption.
- -password <password>
- Sets the
password for encryption. When unzipping, a dialog is presented
to the user and he must enter the identical password for the
decryption and unzipping to proceed.
Note: In version 12.0 and greater, shorter option names may be used
|Long Name||Short Name|
The premium options can be unlocked using this unlock code: EXTRCTSFX_App4hvhU1Aof. This software is now entirely free, but also entirely unsupported. No new versions will be released.
- -u "EXTRCTSFX_App4hvhU1Aof"
- Unlocks the program allowing the premium command-line options to be used. This sofware is now entirely free, but also unsupported. No new versions of the software will be released. The above unlock code can be used to unlock the (formerly) premium options.
- If the -run option is used to run an EXE after extracting, this option causes the self-extractor to exit immediately after starting the -run program.
- If this option is used, the self-extractor's dialog is non-modal while the -run EXE is running.
- -cfg <xml-config-file>
- See below
- -cp <oem_code_page>
- Use a specific code page for filenames. This is useful for non-Western-European filenames. Your EXE will self-extract correctly regardless of the locale of the computer where it runs.
- -d <pre_defined_unzip_dir>
- Creates an EXE that will unzip to a pre-defined, hard-coded absolute directory path. Environment variables delimited with "%" characters can be used, such as "%TEMP%" or "%PROGRAMFILES%".
- -dd <default_unzip_dir>
- Specifies the default unzip directory to appear in the main dialog.
- -ea "exe args"
- Used in combination with the -run option. This string is passed on the command line to the EXE that is run after extraction. Use double quotes to enclose the exe_args.
- -i <icon_filename>
- Embeds a .ico file in the EXE that is created.
- Suppress the main dialog. The main dialog includes a progress bar, so if it is displayed, then no progress dialog is displayed.
- Suppress the progress dialog. A separate progress dialog is shown if the main dialog is suppressed.
- Show the finish notifier dialog. (The finish notifier dialog is suppressed by default.)
- -c "main dialog caption"
- Custom text to display in the main dialog.
- -t "main dialog title"
- Custom text to display in the main dialog's title bar.
- -pc "progress dialog caption"
- Custom text to display in the progress dialog.
- -pt "progress dialog title"
- Custom text to display in the progress dialog's title bar.
- -fc "finish notifier caption"
- Custom text to display in the finish notifier dialog.
- -ft "finish notifier title"
- Custom text to display in the finish notifier dialog's title bar.
- -pwc "password challenge caption"
- Custom text to display in the password challenge dialog.
- -pwt "password challenge title"
- Custom text to display in the password challenge dialog's title bar.
- -ap "arg1 arg2 ..."
- Specify command-line arguments passed to the autorun EXE. Using -ap at runtime will override any autorun arguments specified at create-time via the -ea option.
- Executables produced by the Chilkat Zip 2 Secure EXE program automatically recognize the -unzipDir command line option, allowing it to be extracted into a specific directory without user intervention. The -unzipDir option will override other options embedded within the .EXE, such as -d or -autotemp.
- -log "log_filename"
- Creates a log file which can be sent to email@example.com if problems are encountered.
- -pwd "password"
- Provides a password for encrypted self-extracting EXE's
--> ZIP 2 Secure EXE <--
Download, unzip to any directory and run.
About Self-Extracting EXEs
Setting File Properties on the EXE
XML Config File (optional)
The -cfg option allows for an XML configuration file to be used. This section describes the format of the file.
The XML config file has this format.
<?xml version="1.0" encoding="utf-8" ?>
<ExeFile>The filename of the self-extracting EXE to create.</ExeFile>
<ZipFile>The filename of the zip from which the EXE is created.</ZipFile>
<Password>Encryption password goes here (same as -password)</Password>
<ErrPwdTitle>Title for incorrect password dialog</ErrPwdTitle>
<ErrPwdCaption>Caption for incorrect password dialog</ErrPwdCaption>
<FinOkBtn>Text on finish notifier button</FinOkBtn>
<PwdOkBtn>Text on password challenge dialog's "OK" button.</PwdOkBtn>
<PwdCancelBtn>Text on password challenge dialog's Cancel button.</PwdCancelBtn>
<ErrInvalidPassword>Incorrect password error message.</ErrInvalidPassword>
<MainUnzipBtn>Text on main dialog's unzip button</MainUnzipBtn>
<MainCloseBtn>Text on main dialog's quit/exit button</MainCloseBtn>
<MainBrowseBtn>Text on main dialog's browse-for-directory button.</MainBrowseBtn>
<MainUnzipLabel>Caption displayed in main dialog.</MainUnzipLabel>
<AutoTemp>"1|0" ("1" is same as -autotemp)</AutoTemp>
<ShowFin>"1|0" ("1" is same as -fn)</ShowFin>
<ShowMain>"1|0" ("0" is same as -sm, which suppresses the main dialog)</ShowMain>
<ShowProgress>"1|0" ("0" is same as -sp, which suppresses the progress dialog)</ShowProgress>
<WaitForSetup>"1|0" ("0" is same as -nowait)</WaitForSetup>
<Encryption>"1|0" 1=Yes, 0=No</Encryption>
<SetupExe>EXE to run after extracting (same as -exe command-line option)</SetupExe>
<UnzipDir>Pre-defined unzip directory (same as -d command-line option)>
<DefaultDir>Default unzip directory to appear in the main dialog. (same as -dd)</DefaultDir>
<IconFile>Icon file to be used (same as -icon)</IconFile>
<MainTitle>Same as -t</MainTitle>
<MainCaption>Same as -c</MainCaption>
<FinTitle>Same as -ft</FinTitle>
<FinCaption>Same as -fc</FinTitle>
<ProgressTitle>Same as -pt</ProgressTitle>
<ProgressCaption>Same as -pc</ProgressCaption>
<PwTitle>Same as -pwt</PwTitle>
<PwCaption>Same as -pwc</PwCaption>