File formats that cannot be read directly by ChangeBASE must be repackaged. In this scenario a pre-configured Virtual Machine will be controlled by ChangeBASE. The software being imported will be installed on the Virtual Machine while ChangeBASE monitors the changes which occur during the installation. These changes will be used to create an MSI.
The MSIs produced as part of this process are suitable for installation, in most cases, depending on their complexity and quality.
Typically, the following file types would be repackaged as MSIs using a Virtual Machine:
- Executable installation (EXE)
When the Virtual Machine is monitored by ChangeBASE during an import there will be changes made to the file system and registry by both the installation routine and by other processes which are not related to the installation routine. The changes made by other processes are known as ‘noise’. It is important that this ‘noise’ is not captured by ChangeBASE, so filters have been developed which define files/folders/registry that can safely be ignored during an import.
In most cases the default values in the filters will not need modifying. However, if you notice that unwanted ‘noise’ is being captured in the MSIs that ChangeBASE produces, you can modify the Repackaging filters. To do so, you can modify %ProgramData%\ChangeBASE\ConverterTools\Repackaging\RepackagingFilters.xml.
Default MSI Template
When repackaging, ChangeBASE creates an MSI based on a default MSI template called Template.msi. This is found in folder %ProgramData%\ChangeBASE\ConverterTools\Repackaging. You can change the template as required (although you are advised to take a copy before proceeding).
To change the logos used in the template (for example)
- Create two new images to replace those in the template (either open the existing images from the template and select Save As, or create them from scratch):
- The main graphic to be used on the Welcome Screen, at size 493 x 312 pixels. Only the left-hand portion (blue in the example below) should be edited. Leave the rest white.
- The subsidiary graphic used at the top of the remaining dialogs, at size 493 x 312 pixels. Remember that there will be left-aligned black text superimposed over this image.
TIP: Save the images as 256 color bitmaps if possible, to safeguard quality while keeping size to a minimum. Keep the names meaningful so that you can distinguish between the two images that you create.
- Using either Orca or InstEd, open an MSI with which you wish to use the new template, and go to the Binary table.
- Click in the Data field for WixUI_Bmp_Dialog and select the replacement for the main graphic that you created.
- Click in the Data field for WixUI_Bmp_Banner and select the replacement for the subsidiary graphic that you created.
- Save the MSI.
The Repackaging Process
Proceed, as follows:
- For each Virtual Machine that you are going to use, ensure that you have followed the procedure in Virtual Machine Configuration, including the running of CBVMTools.
- Ensure that you have set up the required Virtual Machines, in accordance with Virtual Machine Setup, and that you have associated each one with the Conversion Technology of Repackaging), and the appropriate Snapshot Name, (typically, the one created after the running of CBVMTools), and with a Working Path to which to write the output.
- If you have several possible Repackaging configurations, select the default configuration via Repackaging Options.
- Ensure that the Virtual Machine(s) to be used for Repackaging is powered on.
- Select the files to be repackaged in the Import Options and click Import.
- In the Applications Options, check the file(s) to be repackaged, and select Convert > Repackage.
Note: The imported files appear with gray RAG statuses because, being in a non-MSI state, they cannot yet be assessed against the checks in ChangeBASE.
- The file(s) appears under the Setup tab on the Convert screen.
- If you have several files under the Setup tab, and they are ready to be repackaged in accordance with the defaults referred to in the earlier steps, and without the addition of any prerequisites, then you can repackage them all simultaneously by selecting Convert > All. Then move to Switch to the Progress tab. However, if you wish to repackage files selectively, proceed from the next step.
- Highlight the file to be repackaged.
- In the Technology drop-down, ensure that Repackaging is selected.
In the Operating System drop-down, select either Windows XP or Windows 7 if you use the built-in ChangeBASE Repackaging technology or Windows XP, Windows 7, Windows 8, Windows Server 2003 R2, Windows Server 2008 R2 or Windows Server 2012 if you use the MSI Studio repackaging technology.
- In the Architecture drop-down, ensure that 32-bit (x86) is selected.
- The Defined VMs field shows the number of Virtual Machines set up in Virtual Machine Setup that are available for the technology you selected above. Verify that at least one is available.
- If you wish to configure the process manually, check Manual Configuration, and enter the Configuration Timeout (seconds).
- If you wish to use a specific Hypervisor or Virtual Machine - for example, if you have more than one Defined VM - check Specific Hypervisor or VM, and select the required Hypervisor and Virtual Machine from the associated drop-downs.
- Click on the far right of the screen to open the Applications pane. Then drag from there, under the Prerequisites and Packages tab, any applications that need to be installed on the Virtual Machine prior to conversion. Each dragged application creates a new row.
NOTE: You can change the Order of these prerequisites by dragging the rows under the Prerequisites and Packages tab up and down. Click to close the the Applications pane again.
- Against Arguments, enter the arguments to be used, for example /S for a silent installation. Where available, click Detect to automatically enter any arguments linked to the application.
If the package that you wish to capture has source files that are external to the installer, then checking the Copy External Media Files option will copy to the Virtual Machine all the files in the folder in which the package resides.
Caution: Be careful when checking this option if your packages are all contained within the same folder, as this could result in ChangeBASE copying a large set of files to the Virtual Machine unnecessarily.
- Under Transforms, remove any that are not required and change the order as needed.
- Provided that you have the indication to go ahead, indicated by the icon, ensure that the application to be converted is highlighted, and select Convert > Selected at the top of the screen.
- Switch to the Progress tab.
Note: The capture process on the Virtual Machine works by monitoring the installer process for the duration that the legacy file runs.
The progress of the capture in ChangeBASE is indicated in the right hand pane of the Progress tab.
The Virtual Machine captures each package that it can and creates an MSI for each where possible.
The template MSIs are created in the Working Path that you selected in Virtual Machine Setup.
To complete the cycle, the resultant MSIs are copied to the Package Source associated with the CSV file or SCCM source (refer to Package Source Name), from where they are automatically pre-loaded for import and assessment.
TIP: To remove old jobs from the Progress tab, use the Filter Editor by right-clicking in the Conversion Status column.
The available Conversion Status numbers are as follows:
So, for example, to remove any unsuccessful jobs from the tab, set Conversion Status to Does not equal 5.
To clear the filter, either right-click in the Conversion Status column and select Clear Filter, or clear the box in the bottom left hand corner of the screen.