Search code examples
installationwindows-installermerge-module

How to upgrade from a .msi installer to a .msm for new version?


Say I have a component which is made up of a bunch of DLLs. And the component was released using a .msi installer for several versions.

Now, we need it to be a .msm so that it can be included in other msi installers. So we need to build a merge module that can upgrade from .msi installations.

How to do that? Or it cannot be done? We are using Wix.


Solution

  • As long as you maintain the same GUIDs and set the components to be shared then it should be possible to move the components into a MSM instead. The MSM will just cause the components to be included into the installers it is included in the same as if the components had been added to the installer so it's more like just copying the components into several installers.

    Granted I haven't tried out any of this, only had to the reverse of fixing a mistake when multiple installers shared GUIDs for components when i did not want that behavior.