First guess: maybe the packages are being reference counted by another bundle 
still on the machine.
 
-----Original Message-----
From: Daniel Madill [mailto:dan.mad...@quanser.com] 
Sent: Monday, January 6, 2014 12:24 PM
To: WiX-users@lists.sourceforge.net
Subject: [WiX-users] Burn not uninstalling MSI downloaded from URL

Hi,

I have a simple burn bundle that contains three packages: .NET, a 64-bit MSI 
and an equivalent 32-bit MSI. The MSIs are not compressed as part of the bundle 
EXE but are external. The MsiPackage elements have both a SourceFile attribute 
and a DownloadURL attribute. If I run the bundle EXE with the MSI's contained 
on the local file system then the bundle uses the appropriate local MSI and 
installs the package. The package can also be uninstalled without any problem.

If I remove the MSI from the local file system to force the bundle to use the 
download URL then it does indeed download the MSI from the URL and install it 
successfully.

HOWEVER, in this case, uninstalling the bundle causes the bundle to be removed 
from ARP with no complaints, but the MSI files are NOT UNINSTALLED. In other 
words, it clearly has not uninstalled the MSI. It only uninstalls the bundle. 
This leaves my system in a state where I have to manually remove all the files 
that were installed by the MSI and then do a System Restore to get rid of the 
component registrations.

I'm using the ManagedBootstrapperApplicationHost with a version of the 
src/Setup/WixBA that has only been modified slightly (really just small changes 
to the GUI and "check for update" code so far).

My Chain looks like:

        <Chain>
            <PackageGroupRef Id='NetFx40Web' />
            <MsiPackage Id='myapp_win64'
                        Name='win64\myapp.msi'
                        SourceFile='$(var.MyApp.ProjectDir)win64\myapp.msi'
                        DownloadUrl='http://mycompany.com/win64/myapp.msi'
                        InstallCondition='VersionNT64 >= v6.1'
                        Compressed='no'
                        Permanent='no'/>
            <MsiPackage Id='myapp_win32'
                        Name='win32\myapp.msi'
                        SourceFile='$(var.MyApp.ProjectDir)win32\myapp.msi'
                        DownloadUrl='http://mycompany.com/win32/myapp.msi'
                        InstallCondition='(NOT VersionNT64) AND (VersionNT >= 
v6.1)'
                        Compressed='no'
                        Permanent='no'/>
        </Chain>

The only thing I noticed in the log that looked like a warning during install 
was the line:

[1010:0D9C][2014-01-06T14:23:04]w355: Unable to register source directory: 
C:\ProgramData\Package 
Cache\{E351F542-514D-4019-8362-61F01897D08B}v2.3.703\win64\, product: 
{E351F542-514D-4019-8362-61F01897D08B}, reason: 0x80070645. Continuing...

During uninstall, the log showed the following line that looked suspicious:

[1320:1644][2014-01-06T14:31:31]w120: Detected partially cached package: 
myapp_win64, invalid payload: myapp_win64, reason: 0x80070570

Does anyone know what is going wrong? Do I need to define the Cache attributes 
for the MsiPackage elements? I can provide more of the logs if needed. It never 
creates an uninstall log specific to the MSI so it looks to me like it never 
even attempts to uninstall the MSI.

Ultimately what I want to do is have a single bundle EXE that I put on a 
distribution CD as well as on the web. On the distribution CD, I will also have 
the two MSIs on the CD so that everything the user needs is available on the 
CD. On the web, I will put the MSIs at the download URLs so that the customer 
only has to download the bundle EXE, which is quite small, and then the bundle 
EXE itself will download the MSI it needs depending on whether the client is 
running a 32-bit or 64-bit version of Windows.

It all seemed to work beautifully and seamlessly until I tried to uninstall the 
bundle after installing from the web.

Sincerely,

Daniel Madill

------------------------------------------------------------------------------
Rapidly troubleshoot problems before they affect your business. Most IT 
organizations don't have a clear picture of how application performance affects 
their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, & 
PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


------------------------------------------------------------------------------
Rapidly troubleshoot problems before they affect your business. Most IT 
organizations don't have a clear picture of how application performance 
affects their revenue. With AppDynamics, you get 100% visibility into your 
Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to