InstallShield 2010 Installs to Program Files (x86) when Program Files (64-bit) selected

ashes999 picture ashes999 · Oct 17, 2011 · Viewed 8.4k times · Source

I have a very basic InstallShield installer. It drops a bunch of tiles to TARGETDIR. If I specify the destination directory as almost any directory, that's where the files get dropped. (eg. if I specify C:\temp, that's where the files appear.)

The weird thing is, if I specify a subdirectory under "Program Files (x86)" as the destination directory, the files get installed to "Program Files". I am (obviously) on a 64-bit machine.

Is this a bug in InstallShield? Is there a work-around for this? I know if my clients (consumers of the installer) will have to install this to Program Files or x86-specific Program Files (it's supposed to be dropped into an existing application's directory).

Ideally, there's a registry key on the client machine indicating where to install my stuff to; if I can just leverage that, that's exactly what I want to do.

Answer

ashes999 picture ashes999 · Oct 18, 2011

It turns out my components are set to install to ProgramFiles. I needed to change them to install to ProgramFiles64. To do this:

  • Go to your Components view (Installation Designer)
  • Click on each component one by one
  • Under General, look for 64-Bit Component and change it to Yes

That resolved it.