Classification: Public Hi Ivo, I am not really sure on your overall question...
However, you cannot create 1 MSI for both 32 and 64 Bit OS's there must be 1 MSI for each bitness (32/64). So this paragraph is not possible: " One solution I tried is to create a transform that converts one MSI into the other. However it looks like a transform can't modify the Package.Platform setting. If my main MSI is 64-bit, it won't even start on 32-bit Windows. If I make the 32-bit MSI the main, even after the transformation it still can't access the 64-bit OS folders like Program Files or System32. Another smaller problem is that since MSTs can't contain resources, I have to put all my files into the main MSI. This gives me warnings that I have files with the same target name. It is fine though, because I have mutually-exclusive conditions for each of the components." I am not sure about the cabs... Steve -----Original Message----- From: Ivo Beltchev [mailto:i...@ibeltchev.com] Sent: June-23-13 3:13 PM To: wix-users@lists.sourceforge.net Subject: [WiX-users] Multi-platform installer with WiX Hi. I need an installer that can work for both 32-bit and 64-bit OS. Currently I build 2 separate MSIs and bundle them together in a bootstrapper EXE. The problem is that 90% of the files are common between the two platforms and my installer is almost double of what it can be. One solution I tried is to create a transform that converts one MSI into the other. However it looks like a transform can't modify the Package.Platform setting. If my main MSI is 64-bit, it won't even start on 32-bit Windows. If I make the 32-bit MSI the main, even after the transformation it still can't access the 64-bit OS folders like Program Files or System32. Another smaller problem is that since MSTs can't contain resources, I have to put all my files into the main MSI. This gives me warnings that I have files with the same target name. It is fine though, because I have mutually-exclusive conditions for each of the components. Another solution I'm looking at is to create 2 MSI files with a shared CAB. I can't find any instructions how to create such CAB though. If the 32-bit and the 64-bit MSIs produce their own CABs, how do I combine them into one file that has no duplicate resources? Also ideally my bootstrapper should be able to extract one of the MSIs and the CAB and then merge the two on the user's machine. This way the user will get a single file to deal with. Is this possible? I've seen some scripts that can do the merging, but I'm not sure if they require the Windows SDK to be installed. Also I'd rather do this in C++ because my bootstrapper is in C++. So, to recap: What is the recommended way to create one installer that supports both platforms? How do I create a shared CAB that contains files from multiple MSIs? How do I merge the MSI and the CAB on the user machine? Regards Ivo ------------------------------------------------------------------------------ This SF.net email is sponsored by Windows: Build for Windows Store. http://p.sf.net/sfu/windows-dev2dev _______________________________________________ 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 June-23-13 3:40:04 PM. The above classification labels were added to the message by TITUS Message Classification. For more information visit www.titus.com. ------------------------------------------------------------------------------ This SF.net email is sponsored by Windows: Build for Windows Store. http://p.sf.net/sfu/windows-dev2dev _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users