Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Installshield 64-bit project setup

What is the best way to use InstallShield to generate installers for both 32 and 64-bit environments? The majority of my application is bit-neutral (.net, Java, data files). I would prefer it if I only had to package up those files once. Is there a standard approach to reducing the maintenance of the installshield projects? Currently the only solution I can find is to have two duplicate projects, where each of the components are flagged with 64-bit and the default install directory set to ProgramFiles64. There must be a better way to do this!

Only a very small portion of my application cares how may bits it is being executed on. We have a few C++ DLLs and JNI calls that need to be different. Most of this is determined at runtime by checking if the JRE we are running on is 64-bits.

I would like to avoid distributing two 130 MB files, and ideally ship one big zip file that has both installers in it, each referencing common components. Do I need to create merge modules for the common things and reference them in each of the projects?

We are using InstallShield 2009 (Premier) if that matters.

like image 591
galuvian Avatar asked Sep 14 '09 19:09

galuvian


People also ask

Is MSI 32 bit or 64 bit?

MSI does not support the mixed package type. The EXE file built by Advanced Installer is a 32 bit one, this contains the x86 and x64 MSI files as well as the files to be installed from the CAB. When launched, the EXE checks the OS architecture and it launches the correct MSI.

What is InstallShield MSI?

InstallShield® is the world's leading Windows installation development solution. InstallShield is designed to enable development teams to be more agile, collaborative and flexible when building reliable InstallScript and Windows Installer MSI installations for desktop, server, Web, virtual and traditional applications.


1 Answers

  • If you can get away with having zero 64-bit components in your setup, then you can just make it a 100% 32-bit setup, and it will work equally well in 32-bit and 64-bit Windows.

  • If that's not possible, I recommend using Product Configuration Flags. On the "Releases" view, create multiple Product Configurations, such as "XP32" and "XP64". Mark the Template Summary field as appropriate: one as "Intel;1033" and the other as "AMD64;1033". Associate each with a unique Product Configuration Flag to identify it, e.g. "xp32", "xp64". Then, for each Feature, set the appropriate Release Flag. You can set the 64-bit property on your 64-bit components as necessary; just make sure that the Features you mark as "xp32" have no 64-bit components in them. This will allow you to only have 1 InstallShield project file, but generate both 32-bit and 64-bit releases.

like image 117
William Leara Avatar answered Sep 20 '22 01:09

William Leara