Install software: choose .msi or .exe?
Solution 1
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.
Solution 2
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.
Solution 3
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.
Solution 4
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
Solution 5
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
Related videos on Youtube
Rabarberski
Updated on September 17, 2022Comments
-
Rabarberski over 1 year
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?
-
The Green Frog over 14 yearsAs 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.
-
nik over 14 yearsThere is a question on similar lines at Stackoverflow: Windows application installer frameworks. I think, it has good points for you.
-
Stein Åsmul almost 10 yearsMSI files have many advantages for corporate use: MSI deployment advantages
-
johntrepreneur almost 10 years
-
-
Oskar Duveborn over 14 yearsThe 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...
-
hasen over 14 yearsHow does that imply that MSI are the recommended (read: best) method?
-
David Yates over 14 yearsMSIs 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)
-
Rabarberski over 14 yearsSo you are saying an msi can not check for required software, and prompt the user to install them?
-
Millhouse over 14 yearsAn 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: msdn.microsoft.com/en-us/magazine/cc163899.aspx
-
Dave Cousineau almost 10 yearsare MSIs not more secure, since an .exe could be anything, but an .msi is definitely an installer package?
-
thameera over 9 years@Sahuagin It could be an installer package that installs malware.
-
Dave Cousineau over 9 years@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?
-
thameera over 9 years@Sahuagin Valid point. But from what I've learned from the answers, an MSI is usually just a wrapper to an exe.
-
AStopher over 8 years@thameera Some program installers for x64 (such as 7-Zip) are only provided as MSIs.
-
Stein Åsmul over 6 yearsThere are some major corporate benefits with MSI. Developers often have problems with MSI due to its exotic design in certain areas, but for corporate deployment MSI files are very superior to previous deployment technologies.
-
killjoy almost 6 yearsPretty sure this is the main obvious reason, and contradicts the above suggestions that sysadmins use it! With global devops, makes more sense for sysadmins to download the exe. Darn MS for making things so confusing.
-
user over 5 yearsDid you mean .exe in the second sentence? Because unpacked .exe usually have cleaner structure of files than that of .msi (both actually can be opened in an archive manager).