We all download software from the Internet or install applications off a CD or some other media. While some companies decide to just distribute their applications packaged in zip files, most of them use some form of an installation program, which is usually an EXE – Executable file – that runs you through a series of steps to install the said software on your machine.
Have you ever wondered how those EXE files are created ?
Well, there are a lot of software that can help you create install packages to distribute your software, and today we’ll walk you through using one that has been been there on your Windows system all along. This unassuming utility is called iExpress and is (probably) the easiest utility you’ll ever find to make an EXE file for your software.
So, if you’ve ever wondered how those installation programs are created, how the “magic” happens during the installation wizard and how a simple single executable spits out hundreds of real useable program files, we’ll answer that question for you today.
Since Microsoft doesn’t create an icon for iExpress in the Programs menu, we’ll have to run it manually. If you’re using Windows XP, go to the Start menu and click the Run button. In the dialogue box that pops up, type iexpress.exe and press Enter. If, like me, you use Windows Vista, just click the Start menu and start typing iexpress and you’ll see the icon popup in the search results.
iExpress runs as a simple wizard and will ask you a couple of questions and based on your choices will generate the installer for you. The first question that you have to answer is if you want to create a new Installer or open an existing one. Since, this is (presumably) your first time using iexpress, we’ll select the first option and click Next.
The next screen will ask you the type of package you want it to create.
iExpress can create a package that runs a command after it unpacks all files to a temporary location, or only extract the files to a location that the user specifies. The first option is useful if you want to, for example, run a script to make changes to the registry before the user runs your program for the first time.
There is a third option to create compressed files only but that is only applicable if you’re distributing Active-X controls. iExpress displays a handy description below each option so you can read that if you’re still not sure which about which option to select.
The next step is to give a name to the package that you’ll create. Enter the name in the text box and move to the next screen.
This step will let you display a confirmation message to the user installing the application. If you want to display a message to your user asking for confirmation if he/she wants to go ahead with the installation, then type in a message in the text box provided and when you’re done click Next.
Now, you will be able to select a license agreement which the installer will ask the user to adhere to. If you have a license agreement for your application, then type it in a text file and provide that here or else select the “Do not display a license“ option and move on.
This is where you actually select the files that will be installed by the installer that you’re creating. You can select as many files as you want here. Add files to the list by clicking on the Add button.
Now, you can safely move forward a few steps and keep clicking on the next button till you come across the Package name and options screen. This is where you select a name for the actual EXE file that gets generated and decide whether you want to hide the extraction process from your users or let them see all the gory details. You can also generate a log files for the installation process.
In the next step you can choose to create what iExpress calls a Self Extraction Directive file. This is needed if you want to later change some of the options that you chose and create another modified installer. Since, we don’t want that right now, we’ll choose not to create an SED file.
That’s it. iExpress will now go ahead and create an EXE file for you. Wasn’t that easy?
What other tools do you prefer to make exe files?