Hi all,
  I have created a managed bootstrapper to install my 2 product msis.  I
have peared down the source of this bootstrapper to create a patch
bootstrapper, to install the msp files for these products.  Everything works
as expected until I try to install the second patch.  It installs along side
the first patch, not superseding it.  The patches are created with
superseding in the patch.wxs file, and are applied appropriately, just not
the ARP entry for the bundle:

ARP:

Product
-HotFix1
-HotFix2

instead of

Product
-HotFix2

Is there something extra I need to do to the second patch bundle to tell it
to supersede the first patch bundle? I use the same upgrade code for all
bundles, figuring that should not change.  The second patch bundle looks
exacly the same as the first, only the version number and patch files used
are different.

Here are my files:
Initial bundle:

<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"; 
        xmlns:util="http://schemas.microsoft.com/wix/UtilExtension";>

  <Bundle 
        Name="PRODUCT2013" 
        Version="$(prod.AppVersion)"
        Manufacturer="MANUFACT" 
        UpgradeCode="GUID"
    Condition="(VersionNT >= v6.1)">

    <WixVariable 
                Id="WixMbaPrereqPackageId" 
                Value="Netfx4Full" />
    <WixVariable 
                Id="WixMbaPrereqLicenseUrl" 
                Value="NetfxLicense.rtf" />
    
    <BootstrapperApplicationRef Id ="ManagedBootstrapperApplicationHost">
      <Payload Name="BootstrapperCore.config" 
        
SourceFile="..\..\Bootstrapper_WIX\ClassLibrary1\MyApplication.BootstrapperCore.config"
/>
      <Payload
SourceFile="..\..\Bootstrapper_WIX\ClassLibrary1\bin\Release\MyBA.dll" />
      <Payload
SourceFile="..\..\BootstrapperPatch_WIX\Bootstrapper1\NetfxLicense.rtf" />
    </BootstrapperApplicationRef>

    <util:RegistrySearch 
                Root="HKLM" 
                Key="SOFTWARE\Microsoft\Net Framework Setup\NDP\v4\Full" 
                Value="Version" 
                Variable="Netfx4FullVersion" />
    <util:RegistrySearch 
                Root="HKLM" 
                Key="SOFTWARE\Microsoft\Net Framework Setup\NDP\v4\Full" 
                Value="Version" 
                Variable="Netfx4x64FullVersion" 
                Win64="yes" />

    <Chain>
      <ExePackage Id="Netfx4Full" 
                Cache="no" 
                Compressed="yes" 
                PerMachine="yes" 
                Permanent="yes" 
                Vital="yes"
       
SourceFile="X:\Tools\Setup\WiX\Resources\dotnetfx40_full_x86_x64.exe"
        DetectCondition="Netfx4FullVersion AND (NOT VersionNT64 OR
Netfx4x64FullVersion)" >
      </ExePackage>
      <PackageGroupRef Id="PROD1Install" />
      <PackageGroupRef Id="PROD2Install" />
    </Chain>
  </Bundle>
</Wix>


Patch bundle:

<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi";
xmlns:util="http://schemas.microsoft.com/wix/UtilExtension";>

  <Bundle 
        Name="PRODUCT2013 HotFix 1" 
        ParentName="PRODUCT2013" 
        Version="$(prod.AppVersion)"
    Manufacturer="MANU" 
        UpgradeCode="SAME_UPGRADE_CODE_AS_ORIGINAL_BUNDLE"
        Condition="(VersionNT >= v6.1)" 
        DisableModify="yes">

    <WixVariable 
                Id="WixMbaPrereqPackageId" 
                Value="Netfx4Full" />
    <WixVariable 
                Id="WixMbaPrereqLicenseUrl" 
                Value="NetfxLicense.rtf" />

    <BootstrapperApplicationRef Id ="ManagedBootstrapperApplicationHost">
      <Payload Name="BootstrapperCore.config" 
         
SourceFile="..\..\BootstrapperPatch_WIX\ClassLibrary1\MyApplication.BootstrapperCore.config"
/>
      <Payload
SourceFile="..\..\BootstrapperPatch_WIX\ClassLibrary1\bin\Release\MyPatchBA.dll"
/>
      <Payload
SourceFile="..\..\BootstrapperPatch_WIX\Bootstrapper1\NetfxLicense.rtf" />
    </BootstrapperApplicationRef>

    <RelatedBundle Id="SAME_UPGRADE_CODE_AS_ORIGINAL_BUNDLE"
Action="Patch"/>

    <util:RegistrySearch 
                Root="HKLM" 
                Key="SOFTWARE\Microsoft\Net Framework Setup\NDP\v4\Full" 
                Value="Version" 
                Variable="Netfx4FullVersion" />
    <util:RegistrySearch 
                Root="HKLM" 
                Key="SOFTWARE\Microsoft\Net Framework Setup\NDP\v4\Full" 
                Value="Version" 
                Variable="Netfx4x64FullVersion" 
                Win64="yes" />

    <Chain>
      <ExePackage Id="Netfx4Full" 
                Cache="no" 
                Compressed="yes" 
                PerMachine="yes" 
                Permanent="yes" 
                Vital="yes"
       
SourceFile="X:\Tools\Setup\WiX\Resources\dotnetfx40_full_x86_x64.exe"
        DetectCondition="Netfx4FullVersion AND (NOT VersionNT64 OR
Netfx4x64FullVersion)" >
      </ExePackage>
      <PackageGroupRef Id="PROD1InstallPatch" />
      <PackageGroupRef Id="PROD2InstallPatch" />
    </Chain>
  </Bundle>
</Wix>

Any help would be greatly appreciated.

Cheers,
Brian



--
View this message in context: 
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Managed-Bootstrapper-Second-Patch-does-not-supersede-first-Patch-tp7581779.html
Sent from the wix-users mailing list archive at Nabble.com.

------------------------------------------------------------------------------
LogMeIn Central: Instant, anywhere, Remote PC access and management.
Stay in control, update software, and manage PCs from one command center
Diagnose problems and improve visibility into emerging IT issues
Automate, monitor and manage. Do more in less time with Central
http://p.sf.net/sfu/logmein12331_d2d
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to