Whether you know it or not, you’ve almost certainly come across Windows Installer. Almost every software installation nowadays is done using Windows Installer, but it is a horrendously complex and interesting beast. MSI files used by Windows Installer are in fact databases. When you open one, it is interrogated by the Windows Installer Engine, which performs the instructions described inside. As Windows Installer is such a weird and interesting beast, tools to make MSI files were either:
- Arbitrarily limited
- Expensive
- Mind-bendingly complicated
- All of the above
Over the past couple of days, I’ve been writing a new installer for the Internet Health Monitor. Previously the installers were made using the built-in deployment projects for Visual Studio, but like most tools for generating MSI files, it was a bit rubbish. I’ve written the new installer in Windows Installer XML (WiX), which allows me to specify a series of XML files that describe a Windows Installer Database. WiX is mind-bendingly complicated as it is a very thin wrapper around the structure of an MSI file, but that does make it incredibly versatile. If you’ve ever installed Office 2007, or SQL Server 2005 those installation packages were authored in WiX, so it is incredibly powerful.
0 comments:
Post a Comment