Windows Installer is Microsoft's preferred method for installing, updating, and removing software programs. Every Windows Installer package includes an .msi file that describes the files, registry entries, shortcuts, and other elements required to install, update, or remove a software program. These files are commonly used for distributing installable packages. They're also used in software installation Group Policy Objects (GPOs).

When used in software installation GPOs, .msi files provide the best way to install software programs on computers in an Active Directory (AD) organizational unit (OU). When a machine boots up, its Group Policy Software Installation Client-Side Extension (CSE) checks for software programs and automatically installs or upgrades the software configured in the GPO. For example, I use a GPO on my company's network to install or upgrade Adobe Flash Player when new versions are released. (Users can't do this themselves because they don't have administrative privileges.)

An .msi file is actually a database file, so it consists of tables. One of the most informative tables is the Property table because it contains information about the software programs to be installed, upgraded, or removed. You can view an .msi file's Property table (as well as all the other tables) with Orca, a database table editor for creating and editing Windows Installer packages. Note that Orca isn't installed by default in Windows OSs (it's part of the Windows SDK), so it might not be installed on your machine. For more information about Windows Installer, see "Inside Windows Installer".