How to write to 64bit registry path from a 32bit MSI using a MST(Transforms)

Question : I have a 32bit MSI. I want to add a registry. The registry should be installed to 64bit registry section. How I can do it using Transforms in Installshield?


Answer : Make the component having the registry as 64-bit component and change the template summary. Note keep only the registry that needs to be in 64 bit, and move all other files or registry to another component.


Steps:


Using Installshield:


1. Check for the registry that needs to be installed to 64 bit location. Fetch its component name.


mCc65z.png


2. Go to the respective component and make it as 64 -bit as shown below. Do read the instructions pointed below in arrow mark.


fme6Fs.png


3. Save the transforms and validate it for any errors. Since we have added a 64 -bit component,
validation will show ICE 80 error.


cQMqrs.png


4) To resolve the error, go to template summary and change the value to Intel64;1033.


WWEp1Q.png


5) Test for the functionality by executing the msi command along with the transforms file.
msiexec.exe /I "path to msi" TRANSFORMS="path to transforms file" /qb!


NOTE: Since the MSI is meant to be 32-bit, you can ignore the ICE 80 error instead of messing up with the MSI and changing its behavior and just document the acceptance of the ICE80.

Comments

Popular posts from this blog

MSIX - The future universal format

Exploring Advanced Installer Express free edition to convert legacy apps to UWP