cancel
Showing results for 
Search instead for 
Did you mean: 

32-bit and 64-bit Installation Support

32-bit and 64-bit Installation Support

Summary

This article discusses the limitations and workaround of creating a single installation package for 32-bit and 64-bit Basic MSI?s.

Synopsis

Whilst it is not possible to create an MSI installer for both 32 and 64bit applications, we can create a suite project to wrap these MSI's into a single Setup.exe

Discussion


Basic MSI installations have within them a Property called Template Summary which indicates the processor type and language versions which are compatible with its Installation Database. The limitation of this property is that only a single processor type can be given.

This means that a single MSI release cannot support both 32 and 64bit applications and that separate installers must be built to support both processor types.

Workaround


Whilst separate MSI based installers must be created to support both 32 and 64bit installations we can use the InstallShield suite project to wrap both of these Installations into a single setup.exe. In addition, conditions can be placed on these to automatically install the correct MSI depending on the processor type detected. This gives the illusion to the end user that they are using just a single installer.


Create the Project

InstallShield suite projects are only available in InstallShield Premier and can be selected by choosing File > New. The Suite/Advanced UI project can be found on the ?Common? Tab if you are using InstallShield or the ?All Types? tab if using InstallShield from with AdminStudio Enterprise.


User-added image


Create a Feature

This guide will focus on linking 2 MSI packages to a single feature within the Project.
Navigate to Organization > Features View and right click on Features and select ?New Feature?


User-added image




Create the Packages

It is in the packages view that we will pull in the 32bit and 64bit MSI installers and link them to the feature.
Navigate to Organization > Packages view and right click ?Packages? and select ?New Windows Installer package (.msi)


User-added image



You should repeat this process until you have successfully created both packages ? and whilst here you should make sure that both packages are associated to the initial feature that we created.


Creating Conditions on the Packages

Working with the 32bit installer, first highlight the Eligibility Condition sub-entry ?Any? and change it to ?All?. For this example we can remove the default ?MSI Package? and ?None? entries and add a new condition for ?Platform?

User-added image

Once the platform condition is selected we can use the ?Architecture? option to identify the package as a 32bit package by selecting x86. The same process should then be followed to add a condition onto the 64-bit Package, however this time selecting x64.

Result

Once this suite is built and run, you will only see a single feature. If it is run on a 32bit Operating system the architecture condition is met and the 32bit MSI is installed. The opposite is true if run on a 64bit Operating System as the 64bit Architecture condition is met causing the 64bit MSI to install.

This behavior means that the user does not have to choose which option to select also giving the illusion of a single installer.



Additional Information


The Template Summary Property:
http://msdn.microsoft.com/en-us/library/aa372070(v=vs.85).aspx

This feature is available in the Premier edition of InstallShield.

Was this article helpful? Yes No
No ratings