Windows Installer

Windows Installer
DeveloperMicrosoft
Initial release31 August 1999 (1999-08-31)
Final release
5.0 / 22 July 2009 (2009-07-22)
Operating systemWindows 95 or later
PlatformIA-32, x86-64, ARM32, ARM64, Itanium
Included withWindows 2000 or later
PredecessorMicrosoft ACME Setup
TypeInstaller
LicenseFreeware
Websitelearn.microsoft.com/en-us/windows/win32/msi/windows-installer-portal 
Windows Installer Package
Filename extension
.msi, .msp
Internet media type
application/x-ole-storage
Developed byMicrosoft
Type of formatArchive
Container forInstallation information and an optional .cab file payload
Extended fromCOM Structured Storage
Open format?No

Windows Installer (msiexec.exe, formerly named Microsoft Installer, codename Darwin) is a software component and application programming interface (API) of Microsoft Windows, used to install, maintain, and remove software. The installing information, and optionally the related files, are packaged in installation packages, loosely relational databases structured as COM Structured Storages and commonly known as "MSI files", from their default filename extensions. The packages with the file extensions mst contain Windows Installer "Transformation Scripts", those with the msm extensions contain "Merge Modules" and the file extension pcp is used for "Patch Creation Properties". Windows Installer contains significant changes from its predecessor, Setup API. New features include a graphical user interface (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 Nullsoft Scriptable Install System (NSIS).

Before the introduction of Microsoft Store (then named Windows Store), Microsoft encouraged 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.