I have a solution with several dlls that are 64-bit or 32-bit specific that I want to deploy with an installer. I have two basic msi projects in InstallShield 2012, one for 32 bit systems and the other for 64 bit systems. I also have a requirement that the 64-bit installer won't work on 32-bit systems, and the other way around.
Restricting the 64-bit installer to 64 bit systems is easy, but I haven't been able to identify being in a 32-bit system.
Here are the solutions I already tried:
Checking the windows installer properties:
Also, I'm aware of the environment variable PROCESSOR_ARCHITECTURE which holds x86 for 32-bit OS but I couldn't find a way to read it on a basic-msi project.
Have you tried "Not VersionNT64" as a launch condition in your x86 setup? That works fine to prohibit installs on a x64 system. There is no "=whatever" in the condition. On x86 it's undefined, which means it's false, which means the launch condition evaluates to true only on x86 systems.