I know this is a bit late, but for history's sake, here is the link to what you are seeing (it isn't DTF, it is Windows Installer):
http://blogs.msdn.com/b/heaths/archive/2009/07/03/installation-sequence-rest rictions-for-multi-package-transactions.aspx Summary: If you want MSIs if different bitnesses in the same transaction, they must be in 64-bit-then-32-bit order. Blair -----Original Message----- From: Tobias S [mailto:tobias.s1...@gmail.com] Sent: Friday, April 01, 2011 1:11 AM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] DTF Transaction problem with x64 msi The point here is that you are using a multi package transaction. So the whole Install Execute transaction can run either as "x86" transaction or "x64" transaction if there are only "x64" pacakges in the transaction but not as combined one where x64 packages are treated as they should (e.g. targeting 'C:\Program Files\' folder). Windows Installer now seems to make the "x64" packages compatible to x86 packages with the described result. Read this issues a short time ago, think it was also in this mailing list but don't find the link anymore. In general I think as workaround you could separate the logic and use a second transaction just for installing the x64 packages in your bootstrapper. Regards, Tobias 2011/4/1 Douglas Mendizabal <doug...@asna.com>: > I'm using an external UI to chain several msi files together. I have an ExternalUIHandler that is part of a WPF MVVM wizard application. Most of the msi files are 32bit ("Intel" platform) but one of them is a 64 bit ("x64" platform, let's call it "my-x64.msi") that contains both 32-bit and 64-bit components. The wizard app checks the operating system bitness and then makes a list of the msi files that will be installed, so that the x64 msi is only installed when running on a 64-bit OS. > > When I run the my-x64.msi by itself, the 64-bit components are correctly installed into C:\Program Files\... and the 32-bit components are installed into C:\Program Files (x86)\... However, when my-x64.msi is installed by the External UI, the Windows Installer service treats it like a 32-bit MSI and WIN64DUALFOLDERS hoses all components using ProgramFiles64Folder, so I end up with all components in the C:\Program Files (x86)\... folder. > > >From the MSI log when using the External UI: > > MSI (s) (9C:00) [16:00:24:038]: WIN64DUALFOLDERS: 'C:\Program Files (x86)\' will substitute 17 characters in 'C:\Program Files\' folder path. (mask argument = 0, the folder pair's iSwapAttrib member = 0). > > In the External UI, I'm using > > var installTransaction = new Transaction("myInstallTransaction", TransactionAttributes.None); > > to start a muti-package transaction. After that I'm using > > Installer.InstallProcut(pathToMsiString, propertiesString); > > for every MSI file, followed by > > installTransaction.Rollback(); > > if any InstallProduct() call fails or is cancelled, or > > installTransaction.Commit(); > > if they are all successful. Am I missing something else here? Or have I stumbled upon a bug in DTF? > > Thanks, > Douglas M. > > ---------------------------------------------------------------------------- -- > Create and publish websites with WebMatrix > Use the most popular FREE web apps or write code yourself; > WebMatrix provides all the features you need to develop and > publish your website. http://p.sf.net/sfu/ms-webmatrix-sf > _______________________________________________ > WiX-users mailing list > WiX-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/wix-users > ---------------------------------------------------------------------------- -- Create and publish websites with WebMatrix Use the most popular FREE web apps or write code yourself; WebMatrix provides all the features you need to develop and publish your website. http://p.sf.net/sfu/ms-webmatrix-sf _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------------ Benefiting from Server Virtualization: Beyond Initial Workload Consolidation -- Increasing the use of server virtualization is a top priority.Virtualization can reduce costs, simplify management, and improve application availability and disaster protection. Learn more about boosting the value of server virtualization. http://p.sf.net/sfu/vmware-sfdev2dev _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users