Re: [WiX-users] Confused... when installing a 32/64 bit MSI using 1 product.wxs file [P]
In your conditions you probably want to use VersionNT64, not anything from the preprocessor. The ?if…? is used to include/exclude WiX source code from your MSI/Bundle entirely. Blair From: StevenOgilvie Sent: Monday, January 27, 2014 7:27 AM To: General discussion for Windows Installer XML toolset. Blair/Rob is this statement correct: So are you saying I should use: ?if $(sys.BUILDARCH) = x64 ? and NOT ?if $(var.Platform) = x64 ? What about my wixlib where I have 2 files that have a 32 bit version and a 64 bit version what is the proper way to say 32 bit file install on a 32 bit OS and 64 bit file install on a 64 bit OS AND 32 bit file can be installed on 64 bit OS since the x86 MSI can be installed on 64bit OS? Component Id=quot;cmp_Dllquot; Guid=quot;{lt;Some GUID} File Id=file_Dll KeyPath=yes Source=$(var.SourcePath)\lib\x86\SomeFile.dll / Condition ! [ CDATA [$(sys.BUILDARCH) = x64 AND $(sys.BUILDARCH) = x86] ] /Condition /Component Component Id=quot;cmp_DLLl_x64quot; Guid=quot;{lt;Some GUID} Win64=$(var.Win) File Id=file_Dll_x64 KeyPath=yes Source=$(var.SourcePath)\lib\x64\SomeFile.dll / Condition ! [CDATA [$(sys.BUILDARCH) = x64] ] /Condition /Component Thanks Steve -- View this message in context: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Re-Confused-when-installing-a-32-64-bit-MSI-using-1-product-wxs-file-P-tp7591967p7592109.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=119420431iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users -- WatchGuard Dimension instantly turns raw network data into actionable security intelligence. It gives you real-time visual feedback on key security issues and trends. Skip the complicated setup - simply import a virtual appliance and go from zero to informed in seconds. http://pubads.g.doubleclick.net/gampad/clk?id=123612991iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Confused... when installing a 32/64 bit MSI using 1 product.wxs file [P]
Blair/Rob is this statement correct: So are you saying I should use: ?if $(sys.BUILDARCH) = x64 ? and NOT ?if $(var.Platform) = x64 ? What about my wixlib where I have 2 files that have a 32 bit version and a 64 bit version what is the proper way to say 32 bit file install on a 32 bit OS and 64 bit file install on a 64 bit OS AND 32 bit file can be installed on 64 bit OS since the x86 MSI can be installed on 64bit OS? Component Id=quot;cmp_Dllquot; Guid=quot;{lt;Some GUID} File Id=file_Dll KeyPath=yes Source=$(var.SourcePath)\lib\x86\SomeFile.dll / Condition ! [ CDATA [$(sys.BUILDARCH) = x64 AND $(sys.BUILDARCH) = x86] ] /Condition /Component Component Id=quot;cmp_DLLl_x64quot; Guid=quot;{lt;Some GUID} Win64=$(var.Win) File Id=file_Dll_x64 KeyPath=yes Source=$(var.SourcePath)\lib\x64\SomeFile.dll / Condition ! [CDATA [$(sys.BUILDARCH) = x64] ] /Condition /Component Thanks Steve -- View this message in context: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Re-Confused-when-installing-a-32-64-bit-MSI-using-1-product-wxs-file-P-tp7591967p7592109.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=119420431iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Confused... when installing a 32/64 bit MSI using 1 product.wxs file [P]
Classification: Public Can I get an answer please I am still so confused :( Thank you! Steve -Original Message- From: Steven Ogilvie Sent: January-24-14 8:27 AM To: 'General discussion about the WiX toolset.' Cc: 'os...@live.com' Subject: RE: [WiX-users] Confused... when installing a 32/64 bit MSI using 1 product.wxs file [P] Classification: Public So are you saying I should use: ?if $(sys.BUILDARCH) = x64 ? and NOT ?if $(var.Platform) = x64 ? What about my wixlib where I have 2 files that have a 32 bit version and a 64 bit version what is the proper way to say 32 bit file install on a 32 bit OS and 64 bit file install on a 64 bit OS AND 32 bit file can be installed on 64 bit OS since the x86 MSI can be installed on 64bit OS? Component Id=cmp_Dll Guid={Some GUID} File Id=file_Dll KeyPath=yes Source=$(var.SourcePath)\lib\x86\SomeFile.dll / Condition ! [ CDATA [$(sys.BUILDARCH) = x64 AND $(sys.BUILDARCH) = x86] ] /Condition /Component Component Id=cmp_DLLl_x64 Guid={Some GUID} Win64=$(var.Win) File Id=file_Dll_x64 KeyPath=yes Source=$(var.SourcePath)\lib\x64\SomeFile.dll / Condition ! [CDATA [$(sys.BUILDARCH) = x64] ] /Condition /Component Thanks Steve -Original Message- From: Blair Murri [mailto:os...@live.com] Sent: January-24-14 12:33 AM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Confused... when installing a 32/64 bit MSI using 1 product.wxs file 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=119420431iu=/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
Re: [WiX-users] Confused... when installing a 32/64 bit MSI using 1 product.wxs file [P]
Classification: Public So are you saying I should use: ?if $(sys.BUILDARCH) = x64 ? and NOT ?if $(var.Platform) = x64 ? What about my wixlib where I have 2 files that have a 32 bit version and a 64 bit version what is the proper way to say 32 bit file install on a 32 bit OS and 64 bit file install on a 64 bit OS AND 32 bit file can be installed on 64 bit OS since the x86 MSI can be installed on 64bit OS? Component Id=cmp_Dll Guid={Some GUID} File Id=file_Dll KeyPath=yes Source=$(var.SourcePath)\lib\x86\SomeFile.dll / Condition ! [ CDATA [$(sys.BUILDARCH) = x64 AND $(sys.BUILDARCH) = x86] ] /Condition /Component Component Id=cmp_DLLl_x64 Guid={Some GUID} Win64=$(var.Win) File Id=file_Dll_x64 KeyPath=yes Source=$(var.SourcePath)\lib\x64\SomeFile.dll / Condition ! [CDATA [$(sys.BUILDARCH) = x64] ] /Condition /Component Thanks Steve -Original Message- From: Blair Murri [mailto:os...@live.com] Sent: January-24-14 12:33 AM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Confused... when installing a 32/64 bit MSI using 1 product.wxs file 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=119420431iu=/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=119420431iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users This message has been marked as Public by Steven Ogilvie on January-24-14 8:27:19 AM. The above classification labels were added to the message
Re: [WiX-users] Confused... when installing a 32/64 bit MSI using 1 product.wxs file [P]
Classification: Public I have fixed my file copy issue I have a x86 MSI and a x64 MSI that installs 2 files that come in x86 and x64 flavours :) I know use this condition to fix it: 32 bit: NOT Msix64 OR $(var.Platform) = x86 64 bit: Msix64 AND $(var.Platform) = x64 Steve -Original Message- From: Steven Ogilvie [mailto:steven.ogil...@titus.com] Sent: January-22-14 6:17 PM To: General discussion about the WiX toolset. Subject: Re: [WiX-users] Confused... when installing a 32/64 bit MSI using 1 product.wxs file [P] Classification: Public Sigh... thanks Carter! Just learning on how to read properly!! Steve -Original Message- From: Carter Young [mailto:ecyo...@grandecom.net] Sent: January-22-14 5:59 PM To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] Confused... when installing a 32/64 bit MSI using 1 product.wxs file [P] Read my First Reply: $(sys.BUILDARCH) should be used when determining Build time Components on the DEVELOPER MACHINE $(var.Platform) should be used to determine the TARGET MACHINE'S bitness. Your having a tough time here because $(sys.BUILDARCH) is always equal to $(var.Platform) on the DEVELOPER MACHINE. Caveat: The above is always true unless setting the CPU Type in VS as Phil Stated. Quoting Steven Ogilvie steven.ogil...@titus.com: Classification: Public Yes it was a pain in the a$$ to maintain two product.wxs files for the same project. Blending them to one file has made work so much easier. I have the configuration set in the wix project file to handle whether it is an x86 debug/release or x64 debug/release build. The issue I have is I am not sure which is proper, using /if $(sys.BUILDARCH) = 64 ? or using ?if $(var.Platform) = x64 ? for setting variables for either x86/x64 Same when installing a file for 32 bit or 64 bit (having 2 files but need to install only one depending on the bitness of the MSI and OS) Thanks, Steve -Original Message- From: Phill Hogland [mailto:phogl...@rimage.com] Sent: January-22-14 4:53 PM To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] Confused... when installing a 32/64 bit MSI using 1 product.wxs file The link provided by eyoung100 was helpful to me in packaging some printer drivers, using a single MSI project with different build configurations to produce x86 and x64 packages. The bundle then includes both packages and installs the one which is appropriate for the architecture of the target system. The two variations of this approach that I took was: 1) In the MSBuild project configurations section as displayed in that link, add the following MSBuild property, which causes the -arch flag to get set by the build process. InstallerPlatformx64/InstallerPlatform or InstallerPlatformx86/InstallerPlatform 2) Since the printer driver that I install must have all of the files (both x86 and x64) 'pre-staged on the target system for the driver signing signature to validate, when building x86 the above InstallerPlatform property causes all components to be marked for x86, and when x64, all components are marked for x64. This means that the advice in the link to set the component attribute can be ignored, as it will be done based on the InstallerPlatform (-arch) flag. Also if the VS solution is used to do the build, and if projects use the 'Any CPU' setting, when building this project it is necessary to actually select x86 or x64 (or modify the project file so that one of those outcomes is selected). I have multiple projects which take this approach. -- 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-tp7591962p75 91966.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=119420431iu=/4140/ostg. clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users This message has been marked as Public by Steven Ogilvie on January-22-14 5:47:47 PM. The above classification labels were added to the message by TITUS Message Classification. For more information visit www.titus.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
Re: [WiX-users] Confused... when installing a 32/64 bit MSI using 1 product.wxs file [P]
sys.BUILDARCH is the value of the -arch argument to candle, which Votive sets to the Platform property of the project during build (so it will reflect the build configuration, and if you build two MSIs with the same project will probably be different values for each one). It has NOTHING to do with the bitness of the developer’s box. var.Platform is initially set by Votive to be the value of the Platform property (but if don’t use wixtargets it won’t be set for you) and could be redefined just about anywhere in the build process, including in WXI files you may include. Blair From: Carter Young Sent: Wednesday, January 22, 2014 3:03 PM To: General discussion for Windows Installer XML toolset. Read my First Reply: $(sys.BUILDARCH) should be used when determining Build time Components on the DEVELOPER MACHINE $(var.Platform) should be used to determine the TARGET MACHINE'S bitness. Your having a tough time here because $(sys.BUILDARCH) is always equal to $(var.Platform) on the DEVELOPER MACHINE. Caveat: The above is always true unless setting the CPU Type in VS as Phil Stated. Quoting Steven Ogilvie steven.ogil...@titus.com: Classification: Public Yes it was a pain in the a$$ to maintain two product.wxs files for the same project. Blending them to one file has made work so much easier. I have the configuration set in the wix project file to handle whether it is an x86 debug/release or x64 debug/release build. The issue I have is I am not sure which is proper, using /if $(sys.BUILDARCH) = 64 ? or using ?if $(var.Platform) = x64 ? for setting variables for either x86/x64 Same when installing a file for 32 bit or 64 bit (having 2 files but need to install only one depending on the bitness of the MSI and OS) Thanks, Steve -Original Message- From: Phill Hogland [mailto:phogl...@rimage.com] Sent: January-22-14 4:53 PM To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] Confused... when installing a 32/64 bit MSI using 1 product.wxs file The link provided by eyoung100 was helpful to me in packaging some printer drivers, using a single MSI project with different build configurations to produce x86 and x64 packages. The bundle then includes both packages and installs the one which is appropriate for the architecture of the target system. The two variations of this approach that I took was: 1) In the MSBuild project configurations section as displayed in that link, add the following MSBuild property, which causes the -arch flag to get set by the build process. InstallerPlatformx64/InstallerPlatform or InstallerPlatformx86/InstallerPlatform 2) Since the printer driver that I install must have all of the files (both x86 and x64) 'pre-staged on the target system for the driver signing signature to validate, when building x86 the above InstallerPlatform property causes all components to be marked for x86, and when x64, all components are marked for x64. This means that the advice in the link to set the component attribute can be ignored, as it will be done based on the InstallerPlatform (-arch) flag. Also if the VS solution is used to do the build, and if projects use the 'Any CPU' setting, when building this project it is necessary to actually select x86 or x64 (or modify the project file so that one of those outcomes is selected). I have multiple projects which take this approach. -- 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-tp7591962p7591966.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=119420431iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users This message has been marked as Public by Steven Ogilvie on January-22-14 5:47:47 PM. The above classification labels were added to the message by TITUS Message Classification. For more information visit www.titus.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=119420431iu=/4140/ostg.clktrk ___
Re: [WiX-users] Confused... when installing a 32/64 bit MSI using 1 product.wxs file [P]
Classification: Public Yes it was a pain in the a$$ to maintain two product.wxs files for the same project. Blending them to one file has made work so much easier. I have the configuration set in the wix project file to handle whether it is an x86 debug/release or x64 debug/release build. The issue I have is I am not sure which is proper, using /if $(sys.BUILDARCH) = 64 ? or using ?if $(var.Platform) = x64 ? for setting variables for either x86/x64 Same when installing a file for 32 bit or 64 bit (having 2 files but need to install only one depending on the bitness of the MSI and OS) Thanks, Steve -Original Message- From: Phill Hogland [mailto:phogl...@rimage.com] Sent: January-22-14 4:53 PM To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] Confused... when installing a 32/64 bit MSI using 1 product.wxs file The link provided by eyoung100 was helpful to me in packaging some printer drivers, using a single MSI project with different build configurations to produce x86 and x64 packages. The bundle then includes both packages and installs the one which is appropriate for the architecture of the target system. The two variations of this approach that I took was: 1) In the MSBuild project configurations section as displayed in that link, add the following MSBuild property, which causes the -arch flag to get set by the build process. InstallerPlatformx64/InstallerPlatform or InstallerPlatformx86/InstallerPlatform 2) Since the printer driver that I install must have all of the files (both x86 and x64) 'pre-staged on the target system for the driver signing signature to validate, when building x86 the above InstallerPlatform property causes all components to be marked for x86, and when x64, all components are marked for x64. This means that the advice in the link to set the component attribute can be ignored, as it will be done based on the InstallerPlatform (-arch) flag. Also if the VS solution is used to do the build, and if projects use the 'Any CPU' setting, when building this project it is necessary to actually select x86 or x64 (or modify the project file so that one of those outcomes is selected). I have multiple projects which take this approach. -- 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-tp7591962p7591966.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=119420431iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users This message has been marked as Public by Steven Ogilvie on January-22-14 5:47:47 PM. The above classification labels were added to the message by TITUS Message Classification. For more information visit www.titus.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=119420431iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Confused... when installing a 32/64 bit MSI using 1 product.wxs file [P]
Read my First Reply: $(sys.BUILDARCH) should be used when determining Build time Components on the DEVELOPER MACHINE $(var.Platform) should be used to determine the TARGET MACHINE'S bitness. Your having a tough time here because $(sys.BUILDARCH) is always equal to $(var.Platform) on the DEVELOPER MACHINE. Caveat: The above is always true unless setting the CPU Type in VS as Phil Stated. Quoting Steven Ogilvie steven.ogil...@titus.com: Classification: Public Yes it was a pain in the a$$ to maintain two product.wxs files for the same project. Blending them to one file has made work so much easier. I have the configuration set in the wix project file to handle whether it is an x86 debug/release or x64 debug/release build. The issue I have is I am not sure which is proper, using /if $(sys.BUILDARCH) = 64 ? or using ?if $(var.Platform) = x64 ? for setting variables for either x86/x64 Same when installing a file for 32 bit or 64 bit (having 2 files but need to install only one depending on the bitness of the MSI and OS) Thanks, Steve -Original Message- From: Phill Hogland [mailto:phogl...@rimage.com] Sent: January-22-14 4:53 PM To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] Confused... when installing a 32/64 bit MSI using 1 product.wxs file The link provided by eyoung100 was helpful to me in packaging some printer drivers, using a single MSI project with different build configurations to produce x86 and x64 packages. The bundle then includes both packages and installs the one which is appropriate for the architecture of the target system. The two variations of this approach that I took was: 1) In the MSBuild project configurations section as displayed in that link, add the following MSBuild property, which causes the -arch flag to get set by the build process. InstallerPlatformx64/InstallerPlatform or InstallerPlatformx86/InstallerPlatform 2) Since the printer driver that I install must have all of the files (both x86 and x64) 'pre-staged on the target system for the driver signing signature to validate, when building x86 the above InstallerPlatform property causes all components to be marked for x86, and when x64, all components are marked for x64. This means that the advice in the link to set the component attribute can be ignored, as it will be done based on the InstallerPlatform (-arch) flag. Also if the VS solution is used to do the build, and if projects use the 'Any CPU' setting, when building this project it is necessary to actually select x86 or x64 (or modify the project file so that one of those outcomes is selected). I have multiple projects which take this approach. -- 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-tp7591962p7591966.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=119420431iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users This message has been marked as Public by Steven Ogilvie on January-22-14 5:47:47 PM. The above classification labels were added to the message by TITUS Message Classification. For more information visit www.titus.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=119420431iu=/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=119420431iu=/4140/ostg.clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Confused... when installing a 32/64 bit MSI using 1 product.wxs file [P]
Classification: Public Sigh... thanks Carter! Just learning on how to read properly!! Steve -Original Message- From: Carter Young [mailto:ecyo...@grandecom.net] Sent: January-22-14 5:59 PM To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] Confused... when installing a 32/64 bit MSI using 1 product.wxs file [P] Read my First Reply: $(sys.BUILDARCH) should be used when determining Build time Components on the DEVELOPER MACHINE $(var.Platform) should be used to determine the TARGET MACHINE'S bitness. Your having a tough time here because $(sys.BUILDARCH) is always equal to $(var.Platform) on the DEVELOPER MACHINE. Caveat: The above is always true unless setting the CPU Type in VS as Phil Stated. Quoting Steven Ogilvie steven.ogil...@titus.com: Classification: Public Yes it was a pain in the a$$ to maintain two product.wxs files for the same project. Blending them to one file has made work so much easier. I have the configuration set in the wix project file to handle whether it is an x86 debug/release or x64 debug/release build. The issue I have is I am not sure which is proper, using /if $(sys.BUILDARCH) = 64 ? or using ?if $(var.Platform) = x64 ? for setting variables for either x86/x64 Same when installing a file for 32 bit or 64 bit (having 2 files but need to install only one depending on the bitness of the MSI and OS) Thanks, Steve -Original Message- From: Phill Hogland [mailto:phogl...@rimage.com] Sent: January-22-14 4:53 PM To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] Confused... when installing a 32/64 bit MSI using 1 product.wxs file The link provided by eyoung100 was helpful to me in packaging some printer drivers, using a single MSI project with different build configurations to produce x86 and x64 packages. The bundle then includes both packages and installs the one which is appropriate for the architecture of the target system. The two variations of this approach that I took was: 1) In the MSBuild project configurations section as displayed in that link, add the following MSBuild property, which causes the -arch flag to get set by the build process. InstallerPlatformx64/InstallerPlatform or InstallerPlatformx86/InstallerPlatform 2) Since the printer driver that I install must have all of the files (both x86 and x64) 'pre-staged on the target system for the driver signing signature to validate, when building x86 the above InstallerPlatform property causes all components to be marked for x86, and when x64, all components are marked for x64. This means that the advice in the link to set the component attribute can be ignored, as it will be done based on the InstallerPlatform (-arch) flag. Also if the VS solution is used to do the build, and if projects use the 'Any CPU' setting, when building this project it is necessary to actually select x86 or x64 (or modify the project file so that one of those outcomes is selected). I have multiple projects which take this approach. -- 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-tp7591962p75 91966.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=119420431iu=/4140/ostg. clktrk ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users This message has been marked as Public by Steven Ogilvie on January-22-14 5:47:47 PM. The above classification labels were added to the message by TITUS Message Classification. For more information visit www.titus.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=119420431iu=/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