Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Some software sites allow to download their software to be installed either as an .msi file or as an .exe file. When given the option, which one should one choose to download for installing software, i.e: what are the advantages of using the .msi file instead of the installer (.exe)?

I do understand the difference between both, in that the .msi file is an installation package that will be processed by a Windows installer executable. And the .exe file is an executable containing the installer and installation files. But what is the real benefit of choosing .msi over .exe. In the end, the result is the same. Or not?

share|improve this question
As a general rule, windows takes forever to do things, do I normally go with the .exe's for smaller software packages that install quickly on their own. – The Green Frog Sep 9 '09 at 8:53
There is a question on similar lines at Stackoverflow: Windows application installer frameworks. I think, it has good points for you. – nik Sep 9 '09 at 8:53
"As a general rule, windows takes forever to do things"? A bold and untrue statement, if i've ever seen one. – caliban Sep 9 '09 at 8:54
MSI files have many advantages for corporate use: MSI deployment advantages – Stein Åsmul Jul 24 '14 at 17:28
up vote 13 down vote accepted

Usually msi packages are provided for system administrators who would have the need to deploy the software to several terminals over a network.

The results are no different from using an executable, but msi packages sometimes do have additional options such as doing silent or pre-configured installs.

If you are not a system administrator, use the executable.

share|improve this answer
The executable is often smaller due to better compression as well, but tend to just contain and wrap the msi, automatically extracting it and firing the installation in interactive/user selects options mode... – Oskar Duveborn Sep 9 '09 at 9:10
MSIs aren't merely for sysadmins - though certainly they are used by them; I've found they tend to be more completely removed when doing an uninstall compared to their EXE brethren (and no - I don't know why) – warren Sep 9 '09 at 12:48
are MSIs not more secure, since an .exe could be anything, but an .msi is definitely an installer package? – Sahuagin May 24 '14 at 21:36
@Sahuagin It could be an installer package that installs malware. – thameera Sep 24 '14 at 0:59
@thameera still seems like a big difference. won't an msi have a wizard, whereas an exe will just straight up execute? won't an msi be automatically uninstallable? – Sahuagin Oct 6 '14 at 0:50

MSI files are relational databases and used by the Microsoft Installation Service. This service installs applications onto the computer. MSI files offer far more flexibility for application installation and maintenance than older scripted executable programs could ever provide, thus MSI files are the current recommended method for installations on Windows.

share|improve this answer
How does that imply that MSI are the recommended (read: best) method? – hasen Sep 9 '09 at 11:24

There is no real advantage of .exe over .msi other than if you use Winrar (or some others), you can usually extract all files from a .msi file, without needing to install anything.

share|improve this answer

Sometimes, especially when installing .NET applications, there is a Setup.exe and an .msi. In the case of .NET, the Setup.exe can check to make sure the system has all the proper prerequisites installed (like the .NET Frameowork, etc) for running the application.

If your system is missing one of these prerequisites, it can prompt you to install them first before running application, which could save from having the app successfully install, but then fail to run because of a missing library or framework.

If you have all the prerequisites, the Setup.exe just launches the .msi

share|improve this answer
So you are saying an msi can not check for required software, and prompt the user to install them? – Rabarberski Oct 7 '09 at 10:03
An msi could check for required software, it would just be a bit more complicated to code. Depending on what tools were used to make the installer, the Setup.exe can be generated automatically by some of MS's development tools, making life easier for the coder. Here are some details that might help: – Millhouse Oct 7 '09 at 13:43

I personally prefer .zip (or equivelant) if available. So I can extract it where ever I want, so I know exactly what has changed in my system (since I'm the one who changed it).

The ideal situation would be a portable program.

Though if I have to choose between exe and msi, I'd pick exe. Just because ..

Usually msi files spend a long time doing useless searching for configurations and stuff like that. exe's can do that too, but it's more like that an exe will just extract files somewhere and install start menu shortcuts.

share|improve this answer

Among other subtle differences:

A single MSI file can only have one single locale for the install wizard (details).
This can be a reason for distributing an app as .exe, which is more flexible.

So, if the language of the install wizard is important, you might have better luck with the .exe

share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .