How do I modify an MSI installer using a transform file?
I want to customise an MSI install without using a command line set of options.
Command line switches may not be an option for your installation scenario. Publishing or Assigning software through an Active Directory Group Policy for example does not allow the use of command line options.
A transform file can be used to define the changes you wish to make to an MSI installer. A transform file is the preferred method for Publishing or Assigning software through an Active Directory Group Policy and Microsoft provide a tool, Orca.exe, to do this.
How to use the Orca database editor to edit Windows Installer files.: http://support.microsoft.com/kb/255905
MSDN page on Orca.exe.: http://msdn.microsoft.com/en-us/library/aa370557(v=vs.85).aspx
Unsing the first link above you can find how to get Orca from the Windows Installer SDK.
Create a Transform
In this example I will use the Editor MSI. Launch Orca.exe and load the MSI file you wish to modify.:
File --> Open --> PDFXC5_x64.msi
You are creating a new transform so:
Transform --> New Transform
The available features in the MSI are found in the Feature Table, selecct it from the list of Tables on the left:
Features are nested with a Parent/Child relationship and as with command line switches for a child feature to be installed the Parent feature must be installed. We are interested here in the feature to be installed and the the Level. Level dictates if the specified feature is to be installed, a value of 1 means to install, a value of 0 means do not install. Notice that these are exactly the same as the command line arguements used with the installers. See here for details on using command line arguements: KB#461 Because all features are installed by default, to not install a feature is as simple as changing the Level value to 0.
The other table where you can make changes is the Property Table. Here you can change the default values for preferences or include a license key (string or path to xcvault file). A numeric value of 1 equates to "True" and 0 "False". In the example below I have set a path to an xcvault KeyFile, set VIEW_IN_BROWSERS to false leaving SET_AS_DEFAULT true and changed the EDITOR_LANGUAGE to German. See the MSI installer help pages for the MSI you are using at http://help.tracker-software.com for details on the values used for EDITOR_LANGUAGE.
Values that are changed are highlighted in Green. Once you are happy with the changes you need to generate a transform file that can then be used in conjunction with the MSI file to apply the differences. Transform --> Generate Transform You will be prompted to save it as an mst file:
Using the transform during deployment.
Now that you have a Transform File, applying it during installation is as simple as :
/i "\path\toPDFXC5Pro_x64.msi" TRANSFORMS="\path\to\transform.mst"
Further reading on applying Transforms can be found here: http://technet.microsoft.com/en-ca/library/cc759262(v=ws.10).aspx#BKMK_InstallTransform
alternatively the transform can be applied to a Group Policy deployment: KB#373
More Like This
- KB#338: What are the MSI installation switch options for the PDF-XChange family of products?
- KB#282: Why won't the "Send by E-mail" feature work in conjunction with Microsoft Outlook?
- KB#447: Determine what version I should install/how can I retrieve my serial key?
- KB#286: How do Imanage licenses for PDF-XChange Products on a Windows Terminal Server?
- KB#227: I have an issue using the PDF-XChange SDK sample code with Microsoft Visual Basic in 'Interactive Mode' for debugging.