MSI Transforms
General Information on Transforms
To customize an MSI-based software to suit your needs, you use transforms. Transforms enable you to customize MSI-based software before installation, for example by adding or changing files, shortcuts or registry keys.
Transforms are executed by the Windows Installer while
the package is being installed. Just like the MSI database, they are stored
locally (cached) and are used during
uninstallation and in auto-repair. During installation, several transforms
can be executed for each MSI-based software. Transforms are stored in
.MST files.
It is not possible to use transforms to change MSI-based software that
has already been installed.
Creation of Transforms
The software vendor can provide a wizard that you can use to create a transform while the MSI Package is being generated – for example: The Custom Installation Wizard for Office. The MSI file itself is not changed during transform creation.
Ivanti DSM includes a wizard to create transforms independent from the software vendor.
Transform Types: Secure, Unsecure
We distinguish between two types of transform:
- Secure transforms are cached in a directory to which the user has no write access.
- Unsecure
transforms. For the installation method for
the user, the local copy of the transform is stored in the user
profile’s application directory, making it accessible to users.
Advantage: customizations performed by the transform can be “migrated” if the user works on another computer.
For the installation method for the computer, transforms are stored in the directory %WinDir%\Installer to which the user has no write access.
Recommendation: Do not give the user write access to transforms - use secure transforms.
Execution of Transforms
Transforms are executed by the Windows Installer when the package is being installed. They are stored locally (cached) and are used during uninstallation and in auto-repair. During installation, several transforms can be executed for each MSI-based software.
Transforms can only ever be used with their associated MSI file.
Variables for the Windows Installer: MSI Properties
Properties function as variables for the Windows Installer during installation. They can be used to transfer specific properties for installation, or unwanted properties can be “disabled”. Properties can be changed using transforms.
Public Properties
The values of public properties can by changed by the administrator – either using a transform or as a Windows Installer parameter (e.g. in the MSIInstallProduct command).
Example:
During an
installation, even though unattended mode
is enabled a window appears
at the end of the installation process giving the logged on user the option
to restart the computer. This can be bypassed if the value of the REBOOT property is set to ReallySuppress.
You can either set this value in the transform, or by entering the following
in the parameters line of the MSIInstallProduct
command: REBOOT=ReallySuppress
The Windows Installer offers a range of pre-defined public properties, including:
- ALLUSERS
- COMPANYNAME
- INSTALLLEVEL
- PIDKEY
- REBOOT
- REBOOTPROMPT
- ROOTDRIVE
- USERNAME
Private properties
Private properties can be changed or added to in the same way as public properties.