Merge Module attributes

Reference information
Project page Components and Features
Related topics Working with attribute panes
External links External link Windows Installer documentation

Introduction

A Merge Module is a self-contained database that contains files and other installation resurces for integration with another installer. Merge modules are typically provided by third parties to allow you to distribute their product as part of your own application.

Tarma ExpertInstall can import merge modules into a project and make their contents available as part of your project and installer. This applies to Tarma Installer and Windows Installer installers; once a merge module is imported, its contents are converted to the internal Tarma ExpertInstall format and can be used for any build configuration.

Note: The current version of Tarma ExpertInstall only supports merge module importing; you cannot currently build merge modules with Tarma ExpertInstall.

Attributes

This pane contains the following attributes and options.

Attribute Description
Name Enter the name of the merge module.
MSI version Select the minimum required MSI version from the drop-down list.
Module ID

Enter the module ID of the merge module. The recommended format is Name.GUID, where Name is the module name as entered in Name, and GUID the GUID of the merge module converted to an identifier.

Update

Click this button to re-generate the Module ID from the Name and GUID fields as per the recommended format.

Version

Enter the version number for the merge module in the format a.b.c.d, with a-d being decimal integers from 0 to 65535, inclusive.

GUID

Enter the GUID (Globally Unique IDentifier) for the merge module. When you create or import a merge module, Tarma ExpertInstall automatically generates or import the GUID for the module. Unless you have a good reason to change this GUID and are aware of the implications, we recommend that you keep the GUID that was generated or imported for you.

The merge module GUID must be unique across all Windows software; it is used, among other things, to uniquely identify your merge modules. If the GUID accidentally or intentionally matches the GUID of a different merge module (whether yours or someone else's), the information for the two merge modules will get mixed up.

The merge module GUID must have the following format:

{aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee}

Each group of characters must consist of uppercase hexadecimal digits, i.e., the characters 0-9 and A-F.

Lock GUID

Check this box to protect the GUID field against accidental changes (the field will be made read-only); clear it to allow editing of the GUID field. Because it is very important that the GUID of your merge modules remain unchanged throughout their lifetime, we recommend that you keep this box checked.

Generate

Click this button to generate a new GUID and copy it to the GUID field. The GUID is generated by the Windows UuidCreate function and is guaranteed to be globally unique if your computer contains a functioning network card.

Note: No network access takes place when the GUID is generated, but the network card's unique identifier is used as part of the new GUID. This is combined with time and date information and a counter, and the result is then securely hashed to make it impossible to reconstruct any of the original information.

Contents Enter the user-visible description of the merge module's contents. This is stored in the merge module's Summary Information stream.
Author Enter the user-visible name of the merge module's author. This is stored in the merge module's Summary Information stream.
Comments Enter the user-visible comments or description of the merge module's contents. This is stored in the merge module's Summary Information stream.
Language

Select the primary language for the merge module from the drop-down list. You can also select Neutral to indicate a language-independent merge module.

Sub

Select the sublanguage for the merge module from the drop-down list. Some languages have language-specific sublanguage options, others use the following predefined sublanguages:

  • Default - Indicates the user's default sublanguage.
  • Neutral - Indicates all variants of the primary language.
  • System default - Indicates the system's default sublanguage.