January 19, 2010

Basic difference between .MSI and .MST File

Packages (.MSI files)

This is the file that contains the instructions for MSIEXEC.EXE to install the application. The MSI file is a Database file format and is now the preferred application packaging format for the windows platform. Sometimes the MSI file gets too big and some or all of the files are placed in a .CAB file.

Transforms (.MST files)

In the MSI world, if you didn't create the MSI file, you want to keep the MSI file from the developer intact. To make changes beyond what the original MSI does you use a transform. The transform is applied at the time that the MSI package is installed.If you would repackage an application and it would fail, the Original Developer of the application would sometimes refuse to support it since repackaging strips out their installation logic.

If you create your own MSI packages you can also use transforms to change some parameters for each department of your company. That way you have only one package to maintain and nobody can accuse you of doing a better package for one department vs. another.

Note: Transform files are in fact MSI files with a different file extension. The contents of both files are merged together at install time. They are not supposed to add files to the package but there are way. Wise Package Studio does allow adding files using Transforms but they create a CAB file to bring files in without breaking the MSI rules.


  1. Is there anyway to take an mst and an msi, and compare the two to see the differences made?

  2. Is there a way to compare the 2 and see the differences?

  3. http://www.itninja.com/question/comparing-msts

    You could apply the first MST to the MSI and save it as a new MSI using something like Orca. If you apply the second MST on the newly created MSI you can easily see the differences between the first and the second. That works easier than a textual comparison.