How to Convert EXE to MSI Package
This article provides an overview of EXE to MSI repackaging process, it explains how it works and demonstrates the Adobe Reader installation repackaging.
Installation repackaging is a method of installation transformation from one format to another. This method is used by repackaging tools to transform EXE installations to MSI packages. As far as original setup in EXE format is just a binary file, it isn't possible to extract data from it to produce MSI package. Repackaging tools are able to track file system and registry changes performed on the manual installation of the original EXE setup and use captured information to generate MSI. Produced MSI package contains all settings preconfigured during the manual installations and it can be deployed in a silent mode on a local or remote PCs.
EXE to MSI Repackaging in a Nutshell
Any installation package includes a list of actions that should be performed in scope of installation. For example, it can include files and directories creation, registry keys modification, DLLs registration and similar operations. In EXE installations these operations are encoded in the binary executable file, so it isn't possible to extract them somehow and convert to another format. But it's possible to track file system and registry changes applied by EXE installation in order to reproduce them.
EXE to MSI repackaging tools use special technologies to track changes performed by original installation in order to use it for MSI generation. The repackaging procedure requires you to follow installation steps, select required options, enter registration information and other data to complete the installation. All changes you made will cause changes on the file system and registry. In particular, application files will be created in the installation directory, DLLs will be registered in the system registry and so on. Any customization applied during setup will cause corresponding changes - for example, if you select to install additional components, they will be copied to the installation folder.
File system and Windows registry changes are monitored by EXE to MSI repackaging tools to detect modifications applied by a repackaged installation. Once it's completed, a repackaging tool has a list of changes that are used as input data for MSI generation. All next steps to create MSI often can be completed automatically by EXE to MSI repackager.
Comparison of EXE to MSI Repackaging Technologies
There are two types of repackaging technology used by repackaging tools available today. These methods have known advantages and disadvantages, so it's important to understand the difference:
Snapshots Comparison |
Real-Time Monitoring |
---|---|
How it works. This method allows to get a list of changes by comparing file system and registry snapshots before and after software installation. |
How it works. This method uses a kernel-mode driver to detect file system and registry changes at a real time. |
Advantages. An ability to repackage installations that require reboot. | Advantages. It works faster than Snapshot Comparison. It allows to get more accurate monitoring results and filter out unwanted changes, because it reports an OS process information for every detected change. |
Disadvantages. A list of changes include modifications performed by all processes and applications working in parallel with monitored installation. | Disadvantages. Unable to repackage installations that require reboot. |
Tools. EMCO Remote Deployment, ScriptLigic MSI Studio, Flexara AdminStudio | Tools. EMCO MSI Package Builder |
Repackaging Example
All technical complexity of the EXE to MSI repackaging process can be hided by modern repackaging tools, so you don't need to be an expert in MSI in order complete repackaging successfully. The demo below shows how to convert the Adobe Reader installation to MSI package using EMCO MSI Package Builder.