Did you know that the Bootstrapper has support for checking the OS for its 32 or 64-bit flavor? Currently (as of Beta2) the only way to do this is use the built in property ProcessorArchitecture. This property is set to the current OS processor architecture, which will be ‘Intel’, ‘AMD64’, or ‘IA64’. The secret though is that if you are on a 64-bit processor but only running a 32-bit OS, then the processor will return ‘Intel’ opposed to returning its true name.
So if you your package should only be installed on a 64-bit OS, the following InstallCondition should be sufficient:
<FailIf Property=”ProcessorArchitecture” Compare=”ValueEqualTo”
We are currently discussing a more customer-friendly approach, such as creating a property called VersionNT64, which has the same value as VersionNT but will only be set on a 64-bit flavored OS. (The VersionNT property is set to the current Windows version, for example if the Bootstrapper is ran on XP SP2 VersionNT is set to 5.1.2.) If we do make any changes in this area I will be sure to post about it.