<< Click to Display Table of Contents >> RayPack > 7.3 u6 > User Guide > PackDesigner > MSI / MST / RPP Based Projects > Visual Designer Mode > Setup Organization > Merge Modules Add a Merge Module |
Adding a merge module to a packaging project is initiated from the Merge Module view within the Visual Designer mode of PackDesigner.
To launch the wizard for MSM management, use the Add content from Merge Module button on the upper left corner of the Merge Modules view.
Please process the following wizard steps in turn to extend your project with merge module content.
Merge modules can be selected for import from the set of modules shipped along with the RayPack installation resources or from custom external resources.
To add a module from the list of standard modules, activate the checkbox in the outer left column of the standard merge module list.
The list is quite substantial and is therefore equipped with sorting by column (simply click on any column header to sort ascending or descending by that criterion), and filtering by keyword functionality (use Control + F to toggle the filter visibility). Use these features to quickly navigate to your required merge module.
Use the Refresh button above the list of pre-defined modules to update its contents from the internal Merge Modules library.
WARNING Once a merge module has been added to a project, it cannot be removed by using this wizard. Therefore, when the wizard is run several times for the same project, the already imported merge modules from the pre-defined set list are marked, but that mark cannot be removed. To remove a merge module from a project, remove the Installer database content that represents it within the TABLES view. |
To add a module from an external resource, use the From disk... button above the list of pre-defined modules.
A system explorer dialog is opened, allowing the user to search for an MSM file on local and network volumes.
Once the right MSM file is selected, the Open button is used to add the MSM file reference to the set of available modules. It is already marked for import, meaning that the checkbox in the outer left column is activated.
As soon as the collection of one or more merge modules that are about to be used for the packaging project are marked, the Next button has to be used to proceed with the next wizard step.
The transition to the next step contains the analysis of the merge module collection, which is assigned for integration into the packaging project. If any of these modules has dependencies to other modules, RayPack displays a confirm dialog, requesting a user decision regarding the handling.
The confirmation dialog shows a list of depending modules, which can be toggled to display by using the MORE... button. The decision to include the required modules is either for all or for none, it is not possible to select only a subset of dependencies for inclusion.
Users have three options to choose from:
•Click YES to include the depending modules
•Click NO to proceed without the inclusion of the depending modules
•Click CANCEL to go back to the list of merge modules and change the current selection.
Each merge module has to be wrapped into a package feature. Therefore, users have to pick a feature from the displayed tree view structure of already existing features or add a new feature.
The arrows left of a feature name indicate that it has nested child features. With a click on the arrow the next level of children is displayed (or toggled to be hidden again).
To add a root feature, the Create button is used and the New root feature option selected from the option menu.
If it is required to add child features, use the more advanced feature management interface within the Features view to accomplish that.
As soon as one of the features is selected, the Next button becomes available. Use it to proceed to the next wizard step.
When an MSM is added to an RPP project, RayPack allows two different methods for MSM import. Modules can either be imported and merged in one single step or imported and assigned for later merge at build time.
When an MSM is added to an MSI, the merge process is always executed immediately. Merge at build is not available in these cases, as well as, the whole wizard step Options.
This option immediately merges the content objects of the MSM file with those already existing within the packaging project. This means, for example, any registry key, file, folder, etc. that is contained within the merge module is taken over into the packaging project.
Adding an MSM for immediate merge affects the set of available Installer database tables, as well as, the content of existing ones. Effects are likely to appear within the tables Directory, File, Registry, Feature, Component, FeatureComponent, ModuleSignature, ModuleDependency, ModuleComponents, _Validation. The exact changes depend on the imported MSM file.
Use this option to see the impact of the MSM inclusion immediately, and deal with potential resource conflicts, for example, per single MSM.
This option adds the Merge Module resources to the packaging project, but does not merge the actual contents (e. g. files, folders, registry keys, etc.) with the current packaging project contents.
When the package project is saved, the merge module sources are copied into the <project name>.rpp.Sources directory. The exact path reference is saved within the Installer database table RPModuleSignature, column ModulePath. This path is resolved at build to execute the actual merge process at that time.
WARNING When a packaging project is transferred from one storage location to another, the <project name>.rpp.Sources directory must be transferred along with it, since path values, e. g. the path to merge module source files, are relative ones. Moving the .rpp file alone will lead to errors when that copy is opened for edition in RayPack from that new location. |
Adding an MSM for merge at build affects the following Installer database tables:
•Feature
Only if a new feature / component was added during the wizard execution
•RPModuleSignature
Has been added with new entries, one for every imported merge module. The column ModulePath points to the MSM source file.
•_Validation
If the tables named above were not available before, RayPack will automatically extend this table with addional internal validation rules.
Use this option to prepare all required resources for the desired target package first and handle possible conflicts later in one (potentially complex) build validation procedure.
Since MSM files are updated with new versions from time to time, Using the Merge at Build option may be a useful selection for long-lasting packaging projects.
Click on one of the two method tiles to apply it for this MSM import process execution.
As soon as one of the methods is selected, the NEXT button becomes available. Use it to proceed to the next wizard step.
The Summary page lists all settings defined in the steps before for a final checkup prior to the module import being actually executed.
Use the Next button to start the import.
Use the Back button to make changes to the current settings.
The Progress page is visible as long as RayPack actively imports the merge modules.
Naturally, merging modules immediately takes longer than importing for a later merge. The duration of the import process depends on the complexity and size of the imported MSMs, as well as, on the performance of the underlying packaging machine.
Once the import has been successfully accomplished, the Finished page is displayed. Use the Finish button to close the wizard and observe the updated list of merge modules used within the current project.