sys.BUILDARCH uses the value set via the MSBuild Platform property (x86 for 32-bit intel, etc.) automatically with recent releases of WiX. And most of the time you don’t need to set the Win64 attribute because the same input (the -arch argument to candle) that sets the BUILDARCH value from the MSBuild property automatically sets the Win64 default to an appropriate value. (the released chm docs give the wrong source for this automatic setting).
If you use the var.Platform value you are at the mercy of it being set to something you don't expect. Blair From: StevenOgilvie Sent: Wednesday, January 22, 2014 11:42 AM To: General discussion for Windows Installer XML toolset. Hello, I use 1 product.wxs file at build time, the project file has different configurations for X86 and X64 which allows me build 2 MSI's one for 32 bit and one for 64 bit. I have used these conditions but which one is correct? <?if $(sys.BUILDARCH) = x64 ?> <?define Win=yes ?> <?define PlatformProductName = "$(var.ProductName) (64 bit)" ?> <?define PlatformProgramFilesFolder = "ProgramFiles64Folder" ?> <?define PlatformCAQuietExecDLLEntry = "CAQuietExec64"?> <?define PlatformQtExecCmdLine = "QtExec64CmdLine"?> <?else ?> <?define Win=no ?> <?define PlatformProductName = "$(var.ProductName)" ?> <?define PlatformProgramFilesFolder = "ProgramFilesFolder" ?> <?define PlatformCAQuietExecDLLEntry = "CAQuietExec"?> <?define PlatformQtExecCmdLine = "QtExecCmdLine"?> <?endif ?> OR <?if $(var.Platform) = x64 ?> <?define Win=yes ?> <?define PlatformProductName = "$(var.ProductName) (64 bit)" ?> <?define PlatformProgramFilesFolder = "ProgramFiles64Folder" ?> <?define PlatformCAQuietExecDLLEntry = "CAQuietExec64"?> <?define PlatformQtExecCmdLine = "QtExec64CmdLine"?> <?else ?> <?define Win=no ?> <?define PlatformProductName = "$(var.ProductName)" ?> <?define PlatformProgramFilesFolder = "ProgramFilesFolder" ?> <?define PlatformCAQuietExecDLLEntry = "CAQuietExec"?> <?define PlatformQtExecCmdLine = "QtExecCmdLine"?> <?endif ?> As well some installs have 2 files, 1 for 32 bit and 1 for 64 bit and of course I want the right one to be installed depending on the bitness of the OS i.e.: 32 bit file <Condition></Condition> 64 bit file <Condition></Condition> thanks, Steve -- View this message in context: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Confused-when-installing-a-32-64-bit-MSI-using-1-product-wxs-file-tp7591962.html Sent from the wix-users mailing list archive at Nabble.com. ------------------------------------------------------------------------------ CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments & Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------------ CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments & Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users