How to choose a Repackaging Mode?
MSI Package Builder is shipped with the different repackaging modes to be used for different situations. It is possible to use the smart repackaging technique with the help of the Repackage Installation wizard to be able to create an MSI package immediately, or use the low-level repackaging to benefit from advanced repackaging abilities. As for smart repackaging, you can choose between automated installations monitoring, advanced monitoring of changes made to the operating system and wrapping of existing installations into an MSI package for simultaneous deployment. The low-level repackaging allows you to combine different repackaging techniques and to control each aspect of the repackaging process.
The repackaging through monitoring of file system and registry changes is the easiest mode for configuration, but it has a set of limitations. In this mode the deployment package is created on a basis of changes performed to the operating system by existing installations. You should choose this mode when the repackaged installations do not support silent execution or you cannot find out the parameters to be used for silent execution. This mode is used for creating App-V packages, as installations wrapping is not applicable for virtualization, and MSIX/AppX packages. Also this mode is to be used when you are going to create an MSI package based on generic changes, performed manually rather than those performed by existing installations.
While monitoring existing installations, it is recommended that the Automated Monitoring mode be used. Using this mode guaranties that the monitoring process will stop only after the installation is fully complete, thus all the changes performed by the installation are included into the resulting deployment package. To use this mode, the installation setup should be designed in such a manner, that all processes performing the application and operating system configuration exit on installation completion. If it is not possible to fulfill these requirements, or it is not enough to monitor only those changes that are performed by existing installations, you should use the Advanced Monitoring mode. In such a case, you are responsible for stopping the monitoring process when all required changes are performed.
The main prerequisite for repackaging via changes monitoring, is the fact that the monitoring should be performed in a clean environment. The main disadvantage of this mode is that the resulting deployment will not be fully cross-platform, thus the repackaging results will be valid only for the same operating system as used for monitoring.
The Repackaging via Wrapping mode is the recommended one for experienced users for creating MSI packages. Although it is a little more complicated for creating silent MSI packages, it allows you to avoid all the limitations of the monitoring technology. The installations wrapped into an MSI package will be distributed in the original state, thus deployed correctly to any operating system, regardless the deployment process particularities. It is the mode you should always choose if it is not required to generate the MSI package for silent deployment, but just distribute a package containing a set of existing installations. As for the packages for silent deployment, while using this mode, you must specify the parameters to be passed to the original installer application to be executed in a silent mode.
The low-level repackaging abilities allow you to reach the maximum flexibility in repackaging, but should be used by experienced users only. In this mode, you can change the monitored data and provide the required changes manually. This mode is the most complex, because you are responsible for preparing the correct changes configuration for creating a deployment package. Because of the complexity of generic repackaging process it is required to fully understand each aspect of every step to be performed for successful repackaging.
You are now introduced to the repackaging modes included into MSI Package Builder and should be able to choose an appropriate one during the everyday work.