If you need to install a 100% .NET product, should you prefer MSI installers? Why?
-
possible duplicate of [What are the differences between MSI and EXE installers, and which should I choose?](http://stackoverflow.com/questions/2452670/what-are-the-differences-between-msi-and-exe-installers-and-which-should-i-choos) – Dirk Vollmar Oct 20 '10 at 09:13
-
see also http://stackoverflow.com/questions/902841/why-do-so-many-programs-have-both-a-setup-exe-and-a-setup-msi – rds Dec 30 '10 at 16:23
-
Note that if you build .NET products in a platform independent mode (where they act as 64-bit on 64-bit computers and 32-bit on 32-bit computers) you will be fighting with Windows Installer which requires a strict platform definition. Other installation solutions may work better for that scenario, but I typically would recommend just choosing a platform up front. – Michael Urman Oct 25 '11 at 13:08
-
Here is [**a summary of important corporate benefits from MSI**](http://serverfault.com/questions/11670/the-corporate-benefits-of-using-msi-files/274609#274609). – Stein Åsmul May 06 '15 at 08:56
4 Answers
The most important thing to understand is that MSI is meant to be a benefit to customers not vendors. The ability of a SysAdmin to be able to examine the MSI to know what it will do to their machine and the ability to transform/tailor said behavior to their unique needs is priceless. Add in the standardized logging, command line behavior, transactional nature and so on and you can begin to understand why (despite it's various limitations ) MSI is so valuable.

- 54,556
- 6
- 63
- 100
-
I must have read this back in the day before writing up [this](https://stackoverflow.com/a/49632260/129130). Agree with all, and want to add that for me the most crucial aspects of success were: **reliable silent running** and **reliable remote management** and **implicitly available and mostly reliable uninstall**. – Stein Åsmul Mar 23 '19 at 00:48
Below are a few MSI benefits (taken from this link):
- Can be advertised. So that on demand installation could take place.
- Like advertisement, features can be installed as soon as the user tries to them.
- State management is maintained so Windows Installer provides an a way to let administrators see if an application is installed on a machine.
- Ability to rollback if an installation fails.

- 84
- 7

- 54,530
- 11
- 89
- 103
If the application will be installed by admins pushing your app out to lots of computers or if it'll be included as part of a bigger installation, then a MSI might be better.

- 54,199
- 15
- 94
- 116
-
It's relative easy to make a tree of msi files, and as an admin you can preconfigure a msi file to make easy deployment within an organisation. – Onkelborg Oct 20 '10 at 09:11
An MSI installer will typically accompanied by a setup.exe bootstrapper:
What are the specific differences between .msi and setup.exe file?

- 1
- 1

- 172,527
- 53
- 255
- 316
-
Doesn't _requiring_ an EXE defeat a lot of the advanced features of MSI (like advertisement)? – kizzx2 Feb 07 '11 at 10:32
-
Only if you are using strictly AD GPO. If you are using SCCM / SMS you can advertise EXE installs. If you are talking about Feature level advertisement, that's a hardly ever used feature anyways. Disk Space is cheap in 2011. – Christopher Painter Mar 03 '11 at 23:13