It's always seemed strange to me that downloadable applications would offer multiple types of installers. For example, sometimes you can choose either a .exe or a .msi
Do certain types of installers have advantages over others? Does it matter which one you choose? As a developer, why would I want to offer different installers to my users?
One big difference between the exe and msi:
You can EDIT an MSI file.
You can access the MSI Database directly using Orca -or- code it up through the WindowsInstaller APIs, using your favorite Windows hacking methods.
Ex. I wrote a python based builder which, amongst many other tasks, routinely edits and updates MSI packages.
A quick warning to brave souls:
Although the APIs seem well documented, a LOT of WI functionality is subtle, even cryptic - the MS Office team definitely did not chose the principle of "least surprise" when they created Windows Installer.
IF you choose to delve into the mystic world of WI, be prepared for long hours of head scratching, tedious debugging and pouring over enormous MSI log files
A big advantage of .msi over .exe is that they can be "rebundled" (I don't recall the correct term) by sysadmins for installation over the network for deployment in corporate environments.
the exe ones are mostly compressed ones. msi cant compress really good.
the msi file you can share/install on your computers directly with windows active directory.
In corporate environments, clients are often subject to a "lockdown" policy that prohibits them from downloading EXE files, but usually MSI files are OK.