Create self-extracting EXE files.
(The basic version of this software is FREE)
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 strong 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|
Version 12.0 introduces premium command-line options. An unlock code may be purchased for $249.00. It is valid for all future versions of this software.
- -u <unlock_code>
- Unlocks the program allowing the premium command-line options to be used beyond the 30-day trial. An arbitrary string, such as "123ABC" may be passed to automatically begin a fully-functional 30-day trial. The only features that are non-free are the premium command line options. When run interactively, this software is completely free.
- 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 firstname.lastname@example.org 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
Purchase Unlock Code for Premium Command Line Options:
Buy SFX ($249.00)
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>
Strong is 128-Bit AES Encryption?
What is the chance
that someone could use the "DES Cracker"-like hardware to crack
an AES key? In the late 1990s, specialized "DES Cracker" machines
were built that could recover a DES key after a few hours. In
other words, by trying possible key values, the hardware could
determine which key was used to encrypt a message. Assuming that
one could build a machine that could recover a DES key in a second
(i.e., try 255 keys per second), then it would take that machine
approximately 149 thousand-billion (149 trillion) years to crack
a 128-bit AES key. To put that into perspective, the universe
is believed to be less than 20 billion years old.