PDA

View Full Version : 64-bit Installer doesn't run on XP64-2003



rassmm
11-01-2010, 07:49 PM
I have a 64-bit native app that I am creating an installer for using InstallShield 2011. I sure wish there was an actual list of what things have to be done to create working 64-bit installers, instead of just hints. The app is very straightforward, requires only a prerequisite of MSVC++ 9.0 CRT files.

My installer runs ok on Vista-64. I have marked each component as 64-bit, and am using the x64 template. I discovered I had to make ProgramFiles64Folder appear magically, and put things in there, as 64-bit apps aren't installed there automatically [I'd expected that if you'd declared something as 64-bit in about 10 different places already, you wouldn't have to do that too...]

I create a single setup.exe file. It turns out to be a 32-bit setup.exe, which is a bit counter-intuitive, though it works in Vista-64 ok.

When a beta user tries to install on Windows XP Professional x64 Edition Version 2003 SP1, they get the message:

"The program of feature "...." cannot start or run due to incompatibility with 64-bit versions of Windows. Please contact the software vendor to ask if a 64-bit Windows compatible version is available. "

If they try to start the setup.exe from a command window to produce a log file, they get the message:

"The image file ... is valid, but is for a machine type other than the current machine. "

So it certainly seems like XP64 does not want to run the 32-bit setup.exe app at all. I'm perplexed how that is.

The beta user has been running earlier versions of my 64-bit app on this same machine for some time; the .msi installer for those was created by Visual Studio.

It seems there are a few other magic steps required for a 64-bit installer, suggestions welcome.