Choosing Between Setup Factory and MSI Factory

Setup Factory and MSI Factory are the two different installer development tools created by Indigo Rose Software. While they ultimately perform the same task, they approach it from different angles.

Both products support all standard installation functionality, such as installing and removing files, making changes to the Registry, modifying INI files, registering controls, etc. (See the features page for either product for a full list of their features.) The chart below outlines the similarities and differences in some key areas that may affect your purchasing decision.

Feature Setup Factory MSI Factory
Creates MSI (Windows Installer) packages No Yes
Supports a free-form “scripted” approach for setup logic Yes No
Level of flexibility High Medium
Create self-extracting executable setups (i.e. “setup.exe” files) Yes Yes
Create installers that run on Windows 7, Vista, XP, Server 2003/2008 Yes Yes
Create “Certified for Windows 7″ compliant installers Yes Yes
Create “Works with Windows 7″ compliant installers Yes Yes
Register COM (ActiveX) controls Yes Yes
Install .NET Assemblies to the Global Assembly Cache (GAC) No Yes
Supports the use of Windows Installer merge modules No Yes
Install Internet Information Services (IIS) Websites, virtual directories, etc. No Yes
Supports automatic uninstall Yes Yes
Supports “repair” mode N/A Yes
Flexible configuration of installer dialogs Yes Yes
Free-form dialog editor Yes Yes
Detect and install third-party technologies Yes Yes
Supports more than one language/localization per installer Yes No*
Can be used to create Windows Installer merge modules No Yes
Built in WiX support No Yes
Custom LUA scripting support Yes Yes


Summary & Recommendation on How to Choose

The fundamental architectural difference between the two products is that Setup Factory uses its own proprietary, self-contained setup engine to perform the installation. It includes a powerful built-in scripting language to control the installation procedurally. As such, it is very flexible and configurable.

MSI Factory, on the other hand, creates Windows Installer packages (.MSI files) that are interpreted and run by the Windows Installer Service which must be pre-installed on the end user’s system. Like all standard MSI installers, these are essentially database files that describe the installation in a declarative fashion, and must abide by the rules of the Windows Installer technology.

Although both products are easy to use, many people find that Setup Factory is both easier to use and more straightforward. This is because of its procedural approach, rather than the declarative approach of the MSI Windows Installer technology (the .MSI technology is inherently more complicated and will require you to learn some new and potentially foreign concepts).

Ultimately, if the chart above does not lead you to a clear choice based on your requirements, you should evaluate the free trial versions of both products and see for yourself.

As a general recommendation, if you do not require an .MSI based installer for your product, then we’d recommend that you choose Setup Factory as your installer builder. If you know that your development requirement calls for an .MSI format installer, then your choice is clear that MSI Factory is best for you.

* Each Windows Installer package can only support one language – this is a limitation of the Windows Installer technology itself. However, MSI Factory does allow you to design your installer in multiple languages from one source project and then lets you choose the target language each time that you build.