kfishman
Pilgrim

single install - 32 vs. 64 bit files delivered

I have an InstallScript MSI. I want to have a single install that will install to 32 or 64 bit machiines with the same installation script. We have third party software that has 32 bit libs and 64 bit libs. The 32 bit libs have to be installed to 32 bit machines and the 64 bit libs have to be installed to 64 bit machines. I get the idea of creating 32 and 64 bit features and components. How do I configure the features and components so only the 32 bit libs are installed on 32 bit machines and only the 64 bit libs are installed on 64 bit machines.?

I have included the Not VersionNT64 condition on the 32 bit feature and the VersionNT64 condition on the 64 bit feature, yet both 32 and 64 bit files are being installed.
Labels (1)
0 Kudos
4 Replies
t_mckim
Flexera beginner

Within the same installation project, you can use different Product Configurations along with Release Flags to install different components on 32-bit and 64-bit computers.

Look through the help files. Start with the "Targeting 64-bit Operating Systems" topic under "Installshield 2012| Target System Requirements". At the end of this topic, there are tips for doing exactly what you want.
0 Kudos
kfishman
Pilgrim

I read the Targeting 64-Bit Operating Systems article in the help library and what I got from this was a mechanism to create two installs from a single project; one a 32 bit release and the other a 64 bit release. What I want is a single release from a single project that will install 32 bit components when run on a 32 bit platform and install 64 bit components when run on a 64 bit platform.

Attempting to implement all the "helpful" IS articles was just confusing me and the issue at hand. What I have done is to create 2 features (one for 32, one for 64 bit components). Under each feature, I created a single component. I populated the component associated with the 32 bit feature with 32 bit file. I populated the component associated with the 64 bit feature with 64 bit files. Both features are checked in the Setup Types for both custom and complete. In the Condition field for the component associated with the 32 bit feature, I put in "NOT VersionNT64". In the Condition field for the component associated with the 64 bit feature, I put in "VersionNT64". I have tested this and it seems to work.
0 Kudos
t_mckim
Flexera beginner

VersionNT64 isn't a boolean. The property stores the version of the OS.

If the different libraries you are installing are all compiled as 32 bit, you can use one installation. If one set of libraries is compiled as 64 bit, you'll have to create two installations from the same project.

And yes, the IS articles about 64 bit installations could definitely be better organized and more complete.
0 Kudos
Not applicable

With the introduction of the Suite project type in IS2012 its now very easy to produce a nice front-end GUI that will detect the underlying architecture and run specific 32-bit or 64-bit installers. I have found its much easier to maintain separate 32/64 bit setups. You can still keep common artwork and installscript code.

This keeps everything simple and the installation is seamless as far as the user is concerned and he still sees a single installer EXE.
0 Kudos