Windows Installer will always keep a copy of your MSI file in 
%WINDIR%\Installer.  It needs it there to repair and uninstall the MSI.  The 
copy it keeps has any embedded cabs removed.  But I seem to remember that it 
copies the entire MSI file to the Installer folder, then removes the embedded 
cabs from the MSI and saves the .msi file.  So, if you want to speed up that 
process, use external cab files instead of embedded cab files.  Then Windows 
Installer doesn't have to copy the data in the cab files to the system and then 
go through the work of removing that data from the MSI.

The second problem actually can be fixed by the same thing -- using external 
cab files instead of embedded cab files.  When you sign your MSI, it has the 
cab files inside it.  When Windows Installer caches your MSI file and removes 
the embedded cab files, that changes the file, and therefore it doesn't match 
the signature anymore.  So when the user attempts to uninstall, Windows 
Installer can't validate the signature and shows that the MSI is unsigned.  If 
you use external cabs, Windows Installer doesn't modify your MSI at all when it 
copies it to the Installer folder, so the signature stays valid.

I've read that the signature problem is actually fixed with WI 5.0 in Windows 
7, so you can continue to use embedded cabs and the signature doesn't become 
invalid (on Windows 7).  But I've stopped using embedded cabs, so I haven't 
tried to see if that's actually true.

-Ari


-----Original Message-----
From: Calin Iaru [mailto:ca...@dolphinics.com] 
Sent: Thursday, March 05, 2009 7:11 AM
To: General discussion for Windows Installer XML toolset.
Subject: [WiX-users] msi on vista background copy

I build my MSI with WiX. The problem I see on Vista is that the MSI file is 
copied to a temporary folder or system folder before installing it. If I 
have a laptop with 5400 rpms, then that can take awhile - and I see this 
with lots of installers.
1) How can I prevent this? Some setup apps (usually .exe images) appear to 
install fine, with no double copy - please confirm or infirm.

The MSI file is also signed - if copied to a temp location, then when 
uninstalling, the UAC comes in and asks if I want to uninstall a package 
that is not signed.
2) why and how can I prevent this uninstall unsigned?

Thanks and greatly appreciating,
    Calin 


------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to