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

Reply via email to