Enabling and Disabling Registry Reflection

InstallShield 2014

Project: This information applies to the following project types:

Basic MSI
DIM
InstallScript MSI
Merge Module
Transform

Registry reflection keeps the 32-bit registry view and the 64-bit registry view in sync on the target machine.

Note: Only 64-bit systems with Windows Installer 4 and later support registry reflection. In addition, only Windows Vista and later and Windows Server 2008 and later support it.

If an end user installs a 64-bit application that has a component with registry reflection enabled, Windows Installer makes the associated registry changes in the 64-bit view of the registry, and the reflector copies the registry changes to the 32-bit registry view. Similarly, if an end user then installs a 32-bit application that modifies the same registry key or value, Windows Installer makes the associated registry changes in the 32-bit view of the registry, and the reflector copies the registry changes to the 64-bit registry view.

If registry reflection is disabled, Windows Installer calls the RegDisableReflectionKey function on each key being accessed by the component. This function disables registry reflection for the specified key. Disabling reflection for a key does not affect reflection of any subkeys.

To enable or disable registry reflection for all new and existing registry keys that are affected by a component:

1. In the View List under Organization, click Components.
2. In the Components explorer, select the component for which you want to configure the registry reflection setting.
3. To enable registry reflection, set the Disable Registry Reflection setting to No. This is the default value.

To disable registry reflection, set the Disable Registry Reflection setting to Yes.

For more information about registry reflection, see Registry Reflection in the MSDN Library.