Capture Installations

MSI Package Builder allows you to automatically monitor the changes performed by a single installation or a set of installations and create a deployment package based on these changes. When multiple installations are monitored, they are launched one by one in the specified order. To monitor installations, you should choose the Capture Installations option in the Repackage Installation wizard.

Let us take a look at the monitoring process configuration. First, you need to make sure that the monitoring environment is clean and you follow the repackaging best practices. The program can automatically check some requirements and show the list of monitoring environment issues Pic 1. You need to resolve those issues by following the displayed recommendations. For example, if any Windows applications are running, you can select them and press the Fix Issues button, so those applications will be closed.

Monitoring environment issues

Pic 1. Monitoring environment issues

At the next step of the wizard, you should specify a name for the project to be created based on the monitored changes, provide a set of installations to be monitored and define the installation order Pic 2. You can define command-line parameters to be passed to the installer application for each installation while adding it.

Providing installations to monitor

Pic 2. Providing installations to monitor

It is possible to monitor Windows Installer packages and executable installation packages.

At the next step, you can choose if you would like to create an MSI package, an App-V package or an MSIX/AppX package based on the monitoring results.

Choosing the package type

Pic 3. Choosing the package type

In case you have chosen to create an MSI package, at the next step you should provide a path the location to save  the resulting MSI package and configure the package. Detailed information on configuring an MSI package is available in the Creating an MSI Package chapter.

Configuring an MSI package

Pic 4. Configuring an MSI package

If the output in form of an App-V package has been selected, you need to provide a path to the location to save the resulting App-V package and configure the package. Detailed information on configuring an App-V package is available in the Creating an App-V Package chapter. As for the output in form of an MSIX/AppX package, you need to provide a path to the location to save the package to and define the package configuration options, target platforms and digital signature settings. Refer to the Creating an MSIX/AppX Package chapter.

After you press Finish, the monitoring process starts. As soon as it is completed, a deployment package is created containing the monitored changes in the specified location.

When does the monitoring process stop?

When a monitoring process is running, you can see the monitoring progress on a screen Pic 5. It displays how many installations from those defined are already complete.

Monitoring progress

Pic 5. Monitoring progress

As soon as all the installations have been completed, the monitoring process is stopped automatically. The installation is treated as completed when the installer process and all the processes daughterly to the installer process exit.

Please note that if the setup wizard suggests running the installed application upon the installation completion, you should decline this suggestion. Otherwise, the monitoring module will wait for the started application to exit.

You can abandon the monitoring process using the Stop button at any time, although it is not recommended.

The monitoring process does not stop. Which option should I choose?

You can find yourself in a situation where the monitoring process does not stop after you have passed through all the steps of the setup wizard. To choose further steps, it is necessary to understand what leads to this situation. Let us take a closer look at the list of possible reasons and appropriate solutions for each one.

First, the monitoring process may not be stopping because the installation is still performing the application configuration in background. Thus, it is recommended to be patient and always wait for some time after the installer application user interface has closed.

Another possible reason is that the monitored installation has launched the installed application or one of its modules. This can happen if you have not unchecked an appropriate option on the installation wizard finish page, or if the installation always performs the step of launching the installed program. Please note that those executable modules can be run in the background or minimized to tray. In such a case, you should close the launched applications and continue waiting for the monitoring to stop automatically. The monitoring module will switch to next installation, if any, or create the deployment package, if this installation is the last one from those monitored, as soon as those applications are closed. In case if it is not possible to close the launched applications, but you are sure that the installation is fully complete, you can stop the monitoring process manually and create the deployment package based on the changes currently monitored by pressing the Stop button and then choosing the option to proceed with creation.

It is not recommended that the monitoring process be stopped manually to proceed with the deployment package creation unless you are absolutely sure that the installation is fully completed. In case the setup is still in progress, the repackaging will be incomplete.

The last reason may be that the installation does not fulfill the requirements for monitoring (the process performing the installation does not exit after the setup is completed). If you are not sure that the installation process is fully completed and cannot find out the processes that are preventing the monitoring from being completed, you can abort the monitoring process by pressing the Stop button and then choosing the Abort Monitoring option. All the monitored changes will be irreparably lost. In such a case, it may be convenient for you to use repackaging via wrapping.