The Windows Installer (previously known as Microsoft Installer)
is a software component used for the installation, maintenance, and
removal of software on modern Microsoft Windows systems. The
installation information, and often the files themselves, are packaged
in installation packages, loosely relational databases structured
as COM Structured Storages and commonly known as "MSI files", from
their default file extension. Windows Installer contains significant
changes from its predecessor, Setup API. New features include a GUI
framework and automatic generation of the uninstallation sequence.
Windows Installer is positioned as an alternative to stand-alone
executable installer frameworks such as older versions of InstallShield
and NSIS.
Microsoft encourages third parties to use Windows Installer as the basis for installation frameworks, so that they synchronize correctly with other installers and keep the internal database of installed products consistent. Important features such as rollback and versioning depend on a consistent internal database for reliable operation. Furthermore, Windows Installer facilitates the principle of least privilege by performing software installations by proxy for unprivileged users.
Microsoft encourages third parties to use Windows Installer as the basis for installation frameworks, so that they synchronize correctly with other installers and keep the internal database of installed products consistent. Important features such as rollback and versioning depend on a consistent internal database for reliable operation. Furthermore, Windows Installer facilitates the principle of least privilege by performing software installations by proxy for unprivileged users.