Home » Questions » Computers [ Ask a new question ]

Why do Windows Installers (.msi files) take so much longer to uninstall than other installers?

Why do Windows Installers (.msi files) take so much longer to uninstall than other installers?

Since the Windows XP days, Windows Installers (.msi files), including InstallShield installers (which is just a bootstrap for MSI) has taken around five times longer to uninstall an application than other installers. The same is also usually true about installing.

Asked by: Guest | Views: 414
Total answers/comments: 2
Guest [Entry]

"Windows installer first systematically creates a system restore point, which is a quite slow operation.
Also from the article entitled, appropriately, ""Windows Installer sucks"", an excerpt:

It used to be that installation would
consist of a program executing and
taking a few simple steps to install
your software, then do the reverse on
uninstallation.
That's not how Windows Installer
works. Instead of running a program to
simply install and let it be done
with, it examines the state of your
system, then examines the state of the
database that is the program's
installer, then does a series of
overcomplicated calculations about how
to reconcile the two.
It seems that, instead of running an
installation script, it goes about
solving a traveling salesman problem.
Which is why it runs so slow. Or at
least, that's my impression.

I also add that Windows installer keeps all information in the registry, which is not the world's fastest database."
Guest [Entry]

"Windows installer has many big advantages for corporate deployment, some of which I have described here: serverfault.com/a/274609/20599

Much of the slowness of a Windows Installer session is due to its rollback capabilities. Firstly it creates a restore point prior to install or uninstall (provided system restore hasn't been disabled). Then it will back up all affected files during both uninstall and install to ensure that the system can be restored to its original state should an error occur.

Another contributing factor is that all components in the MSI will be registered in the registry. This involves some overhead.

For compiled MSI files some time is also needed to extract the install files.

See this answer for technical details for speeding up MSI installations."