MSM Installation Modules

From FxCodeBaseWiki
Jump to: navigation, search

msm (Microsoft Installer Merge) module for Order2Go

What is an "msm module"?

Below is the citation from the Microsoft Developer Network:

Merge Module (.msm File)

Also referred to as "merge package file." A merge module (.msm file) is a single package that includes all files, resources, registry entries, and setup logic to install a shared component. Merge modules include all the information necessary for a Microsoft® Windows® installer to install a shared component.

Merge modules are consumed by installer package (.msi) files. Microsoft® Visual Studio® Installer facilitates both creating .msm files and consuming them in an .msi file. You can distribute your shared components in merge modules, and you can use shared components by including the appropriate .msm files in your .msi file.

Why does a developer need the "msm module"?

Evidently, any application developed using Order2Go requires having Order2Go installed on the user's computer. In case the developer distributes Order2Go as a regular installation (Order2Go.exe), he/she has to either:

  • ask a user to execute Order2Go installation package before installing the developer's application.
or
  • automate execution of Order2Go.exe package in his/her own installation script.

However, there is a more or less standard approach to distribute third-party components among the application components called "merge module". In case you use the merge module, all you need is point to the merge module in the installation package designer application. That's all. Since the msm module is included into the installation package, it will be installed together with the developer's application.

For example, in case the developer uses Microsoft Visual Studio to create the installation application, he must right-click on the deployment solution, then choose "Add", then choose "Merge Module" and then point to the msm file. That's all, his installation package is ready to deliver Order2Go.

Pretty easy, isn't it?

Which installers support msm modules?

The msm modules are natively supported by all major Microsoft Installer compatible solutions:

  • Microsoft Installer, Microsoft Visual Studio
  • Wise Installer
  • Install Shield

However, an msm module can be used in any installer which supports execution via valling msiexe, for example in NSIS installer. For NSIS installer you can use the following code

ExecWait 'msiexec /i Order2GoMSM.msm /qn'

May I continue using the exe installation package?

Of course, yes! The msm module is not a replacement for the regular installation package. It is only a more convenient alternative way to distribute Order2Go inside Microsoft Installer-compatible installations. The regular installation package (FXOrder2Go.EXE) will be supported together with the msm module. However, the regular installation package is intended rather for the developers, but can be used for distribution of Order2go with client's applications.

This Article in Other Languages

Language: English  • español