gregmac
Posts: 13
Joined: Wed Oct 13, 2010 2:05 am

32/64-bit specific prerequisites for a mixed 32/64-bit app

I'm trying to add the Microsoft Visual C++ 2010 Redistributable Package to my installer, but I'm not sure how to do it since the C++ redistributable has different downloads/installs for 32-bit and for 64-bit.

My app is a .NET app, and it's targeted as mixed 64/32-bit. I followed the Mixed 32/64-bit instructions at http://www.advancedinstaller.com/user-g ... 32-64.html and now my applications go to the native 64-bit folders/registry paths on 64-bit systems, and also work on 32-bit systems.

I haven't tried this yet - I was hoping I'd find some information on this, prior to spending possibly many hours testing this on different clean virtual machines. Is there a way to set up pre-requisites so that it doesn't try to install the 32-bit redistributable on a 64-bit system, and likewise so it doesn't try to install 64-bit redistributable on 32-bit systems?

Alternatively, am I better off at this point to just have a 32-bit installer, and a 64-bit installer? I would be happy to do that if I could just do it using two separate builds, but from what I know now it seems like I'd have to have two separate .aip files (which makes maintenance a nightmare).
mihai.petcu
Posts: 3860
Joined: Thu Aug 05, 2010 8:01 am

Re: 32/64-bit specific prerequisites for a mixed 32/64-bit app

Hello,
Is there a way to set up pre-requisites so that it doesn't try to install the 32-bit redistributable on a 64-bit system, and likewise so it doesn't try to install 64-bit redistributable on 32-bit systems?
Yes, there is. The functionality you are looking for is in the Prerequisite's Install Conditions tab, specifically in the Launch Conditions section.
Also, you can mark the components you want installed on 64-bit machines as "64-bit Component" from the Organization page
Alternatively, am I better off at this point to just have a 32-bit installer, and a 64-bit installer?
You can implement the above and then you can evaluate the pros and cons(maintenance wise) with the current functionality to see what would determine you to switch from a mixed package to a two package strategy. There are not any major functionality limitations between the two, and as you said it is entirely up to your future maintenance perspective.

Regards,
Mihai
Mihai Petcu - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube
gregmac
Posts: 13
Joined: Wed Oct 13, 2010 2:05 am

Re: 32/64-bit specific prerequisites for a mixed 32/64-bit app

Mihai wrote:The functionality you are looking for is in the Prerequisite's Install Conditions tab, specifically in the Launch Conditions section.
There's an option for "Windows NT" and "Windows NT 64-bit". "Windows NT 64-bit" is pretty clear: If I only check that one, it will only be checked/installed on 64-bit systems. What's not clear to me anyways, is "Windows NT" -- will that only apply to 32-bit systems (if so, it should explicitly say "Windows NT 32-bit")? If it applies to both, then I don't see how it would be possible to make a pre-requisite that only installs on 32-bit systems.
Mihai wrote:Also, you can mark the components you want installed on 64-bit machines as "64-bit Component" from the Organization page
That's an option that is very confusing. The documentation says:
64 Bit
Specify whether your prerequisite is a 64-bit application and it uses a 64-bit installation package.
It doesn't tell you what effect this option has, or why you should tell AI it's 64-bit. Will a 64-bit app that's not checked fail to install? Will a 32-bit app with this checked fail to install? If this checkbox is checked, will it only install on 64-bit systems? With it unchecked will it still install on 64-bit?

I think if nothing else, the documentation should be updated to clarify these situations.

Thanks
Cosmin
Posts: 5797
Joined: Tue Jul 10, 2007 6:39 pm
Contact: Website

Re: 32/64-bit specific prerequisites for a mixed 32/64-bit app

Hi,
What's not clear to me anyways, is "Windows NT" -- will that only apply to 32-bit systems
Yes, this option refers to 32-bit systems. These options will be improved in the next Advanced Installer version.
It doesn't tell you what effect this option has, or why you should tell AI it's 64-bit.
If a prerequisite is marked as 64-bit, it will be launched by using a 64-bit process. This means that the prerequisite and its detection searches will be able to access 64-bit locations.
Will a 32-bit app with this checked fail to install?
Most likely it will not work correctly.
If this checkbox is checked, will it only install on 64-bit systems?
No, only the prerequisite launch conditions determine on which systems the prerequisite can be installed.

Regards,
Cosmin
Cosmin Pirvu - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube

Return to “Common Problems”