I need to adapt existing WISE installers for 64-bit, but don't want to make copies of the existing installers. For future maintenance purposes, I want one project that produces both 32-bit and 64-bit installers.
Googling this, I find indications that it's possible, but no straightforward documentation explaining what the correct approach is. To clarify, there are a few necessary bits:
- A compile-time property needs to trigger what set of binaries to bundle, and later install into the appropriate
Program Files
folder. (Not a runtime install condition, but what files to actually bundle in the installer and compress into the cab files.) - The 64-bit installer should have a distinct
UpgradeCode
so the 32-bit and 64-bit versions could, conceivably, be installed side-by-side. (One shouldn't be able to "repair" a 64-bit installation with a newer 32-bit installer.) - The 64-bit installer should give an error message when run on 32-bit.
- The conditional that drives this should be specifiable on the command-line when building the project.
What approach to this goal would you take? Or, is there relevant documentation that I have missed?