- MSI files are a file format used for installations on Microsoft Windows, and they are still widely used today.
- MSI files are similar to EXE files but have some differences in their construction.
- MSI files were originally used for installing applications via floppy disks.
- MSI files are commonly used for custom installations in offices and for bulk installations across a network.
- MSI files provide easier administration and configuration of install files compared to EXE files.
What is an MSI file? Computing is littered with different file types and extensions, each with its own express purposes. Today’s file format isn’t intended for any operating system other than Microsoft Windows, and it still sees frequent usage today.
The MSI file is similar in concept to an EXE file but with some notable differences. MSI file types are still in regular use with downloaded files on the web, system-wide installations in offices, and notably many of Microsoft’s official installers.
What Exactly Is an MSI File?
MSI is short for Microsoft Windows Installer, and it is a file format that was introduced alongside Windows 95. The file type is one of many ways a user can install files, but it has some noticeable benefits. Fundamentally, there is little distinction for the end user between this file format and other compressed executables.
However, the construction of the Microsoft installer has some differences that make it far different from other archives.
How an MSI Files Works
MSI files have their origin in the early days of Windows 95. Before standard conventions were established regarding storage media and file formats, users were still expecting full functionality from their PCs. Installation of vital applications like Microsoft Office was still done via floppy drives, just as an example.
The Microsoft Windows Installer comes with a relational database, similar in concept to an SQL repo, which is loaded at runtime. This was a far more time-intensive process than modern executables, but it did have an express purpose. The Microsoft installer could be used to stream together assets, like loading an installer through one floppy disk.
In turn, this would allow multiple floppies to be inserted to install the whole of an application. MS Office is the first major killer app to come with MSI files for installation, at least according to former Microsoft engineer Rob Mensching.
In essence, these installation files are like a massive sandwich of data. You’ve got a database, binaries, dependencies, and other assets that are needed at load time. They can keep installation media relatively small while also containing all the necessary files to get the program working.
What Are MSI Files Used For?
One of the more common usages of the Microsoft installer is in custom packages intended for office workstations. There are a dozen ways to accomplish standard application installation on a workstation. Thanks to the construction of this file type, administrators can roll their own, which makes installation a cinch.
It can be a bit more time-consuming than just creating an image, but it has its benefits. You’re not spending hours restoring from known and verified backups, for starters. The file type also allows for modifications and removal of applications as needed. As such, it can be thought of as a one-stop shop in terms of managing a particular application.
One of the additional benefits of the MSI file format is that it allows installations to be pushed across a slew of users in a process Microsoft calls bulk installation. When properly configured, you can have the same applications pushed across to everyone on a given network, provided they are under the same Active Directory groups.
This has additional benefits, at least when bulk installing. You can actively see which users have the application installed on their PC thanks to the metadata stored within the file type itself. There are also registry keys left at the time of installation, meaning a sysadmin can verify that an application is present on a given machine with a glance.
Why Use an MSI Over an EXE File?
Executable files see common use on Windows installations, but they have a different overall purpose. MSI files typically allow for easier administration and configuration of install files. It is a straightforward approach to getting an application installed.
However, EXE files have their benefits. You can typically package together multiple versions of the same application, say for x86, x86_64, and ARM machines. Now, it’ll come down to preference as to which format you prefer for packaging installation media. That said, end users really won’t notice much of a difference. The result is largely the same; you just lack the administration tools afforded by Microsoft’s installer format.
Can You Make MSI Files?
So, is Microsoft the only vendor using this file type? As previously stated, there are benefits to using the file format for system-wide installations or bulk installs. However, it wouldn’t be of much use to a sysadmin or other IT personnel if they couldn’t roll their own.
Creating your own MSI file is a relatively simple task, provided you are well-versed in the Windows ecosystem. Rolling your files can be done readily with the presence of a .cmdtx file and the Admin Console. You’ll have to do a little tinkering and command-line inputs, but, overall, it’s a process that can take a few minutes at most once you’re experienced.
Editing MSI Files
Editing these files isn’t as straightforward as an executable or other document format. Thankfully, Microsoft provides the Orca console, which makes managing these files an easy task. You’ll need the Windows Installer SDK to run Orca, so it isn’t something for a casual user.
However, you might need to remove certain programs and dependencies, or otherwise edit an installer. Orca allows users to accomplish this without having to dive neck-deep into the command line with a graphical interface and some more streamlined processes.
Converting MSI Files to Other Installation Formats
It is possible to convert an MSI file to something like an EXE file. However, it usually requires third-party software suites that aren’t vetted to the same extent as the Windows Installer SDK and Admin Console. There are numerous options for accomplishing this task, but you’re likely better off rolling an executable with any number of installation wizards.
Granted, the Microsoft installer format is more secure overall. Since EXE files are so common, they serve as common attack vectors for the likes of malware, which can be a serious concern if you’re rolling your own software packages for enterprise usage.
That said, it’s doable, just not recommended. There are a number of third-party utilities that can do the conversion process, but it’ll likely take the same amount of time to just create your own EXE file from scratch.
The MSI file format has been instrumental in making Windows such a dominant operating system in the business and education spaces. It allows for fast deployment of software while keeping meticulous records of everything saved within the package. There is also the benefit of being able to administer, manage, and uninstall software from a single interface.
The file format will likely see continued use with Microsoft products for some time to come. It serves as the primary means of delivery for the likes of Office and Teams for wider-scale enterprise deployments. While it may be nearing three decades of use, Microsoft has done quite a bit of work to streamline the process of creating and maintaining your own installation files over the intervening years.
The image featured at the top of this post is ©sdx15/Shutterstock.com.