ForceAbsent allows you to remove permanent packages. However, Burn will
ignore your Bundle's request to remove a package if another Bundle has a
reference count on the package. You'll see a statement in the bundle log
file to that effect.


On Fri, Mar 22, 2013 at 8:26 AM, Doug Beard <dbe...@jackhenry.com> wrote:

> Hello,
>
> I'm pretty new to WiX.  I've looked all over for some definitive answer
> but have not found resolution to my issue, so I'm bringing it to this list.
>
> I have a Bundle and a MBA written in WPF.  The bundle contains two
> packages, both packages are MSI compiled from other WiX Product packages.
> Example:
> ____________
>
> <?xml version="1.0" encoding="UTF-8"?>
> <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi";>
>                 <Product Id=" REDACTED " Name="REDACTED"
>
>       Language="1033"
>
>       Version="13.0.1.11"
>
>       Manufacturer=" REDACTED "
>
>       UpgradeCode=" REDACTED ">
>
>                                 <Package InstallerVersion="200"
>
>                       Compressed="yes"
>
>                       InstallScope="perMachine"  />
>                                 <MajorUpgrade
>
> AllowSameVersionUpgrades="no"
>                                                 DowngradeErrorMessage="A
> newer version of [ProductName] is already installed."  />
>                                 <MediaTemplate
>                                                 EmbedCab="yes" />
>                                 <Feature Id="ProductFeature"
>
>                       ConfigurableDirectory="INSTALLFOLDER"
>
>                       Display="expand"
>
>                       Title=" REDACTED "
>
>                       Level="1" >
>                                                 <ComponentGroupRef
> Id="ProductComponents"  />
>                                 </Feature>
>                 </Product>
>                 <Fragment>
>                                 <Directory Id="TARGETDIR"
>
>                                       Name="SourceDir">
>                                                 <Directory
> Id="ProgramFilesFolder">
>                                                                 <Directory
> Id="INSTALLFOLDER"
>
>
> Name=" REDACTED " />
>                                                                 <Directory
> Id="ProgramMenuFolder">
>
>       <Directory Id="ApplicationProgramsFolder" Name=" REDACTED "/>
>
> </Directory>
>                                                 </Directory>
>                                 </Directory>
>
>                                 <DirectoryRef
> Id="ApplicationProgramsFolder">
>                                                 <Component
> Id="ApplicationShortcut" Guid=" REDACTED ">
>                                                                 <Shortcut
> Id="UninstallProduct"
>
>
> Name=" REDACTED "
>
>
> Description=" REDACTED "
>
>
> Target="[SystemFolder]msiexec.exe"
>
>
> Arguments="/x [ProductCode]"/>
>
> <RemoveFolder Id="ApplicationProgramsFolder" On="uninstall"/>
>
> <RegistryValue Root="HKCU" Key="Software\Microsoft\ REDACTED "
> Name="installed" Type="integer" Value="1" KeyPath="yes"/>
>                                                 </Component>
>                                 </DirectoryRef>
>                 </Fragment>
>                 <Fragment>
>                                 <ComponentGroup Id="ProductComponents"
>
>
>           Directory="INSTALLFOLDER">
>                                                 <ComponentGroupRef
> Id="HeatGenerated"/>
>                                                 <ComponentRef
> Id="ApplicationShortcut"/>
>                                 </ComponentGroup>
>                 </Fragment>
> </Wix>
>
> _______________
>
>
>
> 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";
>      xmlns:bal="http://schemas.microsoft.com/wix/BalExtension";
>      >
>                 <Bundle Name="REDACTED"
>           Version="13.0.1.11"
>           Manufacturer=" REDACTED "
>           UpgradeCode=" REDACTED "
>           IconSourceFile=" REDACTED _AddRemove.ico"
>           >
>     <Variable Name="InstallFolder" Type="string"
> Value="[ProgramFilesFolder] REDACTED "/>
>     <Variable Name=" REDACTED " Type="string" Value="[ProgramFilesFolder]
> REDACTED "/>
>     <Variable Name="WCFUser" bal:Overridable="yes" Persisted="yes"
> Type="string" Value=".\LocalSystem"/>
>     <Variable Name="WCFPassword" bal:Overridable="yes" Persisted="yes"
> Type="string" Value=""/>
>
>     <RelatedBundle Id=" REDACTED " Action="Upgrade"  />
>
>
>     <BootstrapperApplicationRef Id="ManagedBootstrapperApplicationHost">
>
>       <PayloadGroupRef Id="InstallerPayload"/>
>     </BootstrapperApplicationRef>
>
>                                 <Chain>
>       <PackageGroupRef Id='Netfx4Full' />
>
>       <MsiPackage SourceFile="$(var. REDACTED.TargetPath)"
>                   Id=" REDACTED "
>                   ForcePerMachine="yes"
>                   Compressed="yes"
>                   Cache="no"
>                   Visible="no"
>                   Vital="no">
>         <MsiProperty Name="INSTALLFOLDER" Value="[InstallFolder]" />
>         <MsiProperty Name="WCFUSER" Value="[WCFUser]" />
>         <MsiProperty Name="WCFPASSWORD" Value="[WCFPassword]" />
>       </MsiPackage>
>
>       <MsiPackage SourceFile="$(var. REDACTED.TargetPath)"
>                   Id=" REDACTED "
>                   ForcePerMachine="yes"
>                   Compressed="yes"
>                   Cache="no"
>                   Visible="no"
>                   Vital="no">
>         <MsiProperty Name="INSTALLFOLDER" Value="[ REDACTED
> InstallFolder]" />
>       </MsiPackage>
>     </Chain>
>                 </Bundle>
>
>   <Fragment>
>     <PayloadGroup Id="InstallerPayload">
>       <Payload
> SourceFile="$(var.WixBootstrapperWPF.TargetDir)\BootstrapperCore.config"/>
>       <Payload SourceFile="$(var.WixBootstrapperWPF.TargetDir)\
> REDACTED.IISIntegration.dll"/>
>       <Payload
> SourceFile="$(var.WixBootstrapperWPF.TargetDir)\WiXBootstrapperWPF.dll"/>
>       <Payload
> SourceFile="$(var.WixBootstrapperWPF.TargetDir)\CustomConfigurationSections.dll"/>
>       <Payload
> SourceFile="$(var.WixBootstrapperWPF.TargetDir)\Microsoft.Practices.Prism.dll"/>
>       <Payload
> SourceFile="$(var.WixBootstrapperWPF.TargetDir)\Microsoft.Practices.Prism.Interactivity.dll"/>
>       <Payload
> SourceFile="$(var.WixBootstrapperWPF.TargetDir)\Microsoft.Practices.Prism.MefExtensions.dll"/>
>       <Payload
> SourceFile="$(var.WixBootstrapperWPF.TargetDir)\Microsoft.Practices.Prism.UnityExtensions.dll"/>
>       <Payload
> SourceFile="$(var.WixBootstrapperWPF.TargetDir)\Microsoft.Practices.Unity.dll"/>
>       <Payload
> SourceFile="$(var.WixBootstrapperWPF.TargetDir)\Microsoft.Practices.Unity.Configuration.dll"/>
>       <Payload
> SourceFile="$(var.WixBootstrapperWPF.TargetDir)\Microsoft.Practices.ServiceLocation.dll"/>
>       <Payload
> SourceFile="$(var.WixBootstrapperWPF.TargetDir)\System.Windows.Interactivity.dll"/>
>
>       <Payload
> SourceFile="..\SharedBin\WiX\Microsoft.Deployment.WindowsInstaller.dll"/>
>     </PayloadGroup>
>   </Fragment>
>
>   <Fragment>
>     <!-- Managed bootstrapper requires .NET as a dependency, since it was
> written in .NET.
>        WiX provides a Bootstrapper for the bootstrapper. The fragment
> below includes .NET.
>        For more information or examples see Heath Stewart's blog or the
> WiX source:
>
> http://blogs.msdn.com/b/heaths/archive/2011/10/28/introducing-managed-bootstrapper-applications.aspx
>        -->
>
>     <WixVariable Id="WixMbaPrereqPackageId" Value="Netfx4Full" />
>     <WixVariable Id="WixMbaPrereqLicenseUrl" Value="NetfxLicense.rtf" />
>
>     <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" />
>
>     <PackageGroup Id="Netfx4Full">
>       <ExePackage Id="Netfx4Full" Cache="no" Compressed="yes"
> PerMachine="yes" Permanent="yes" Vital="yes"
>                   SourceFile="..\SharedBin\dotNetFx40_Full_x86_x64.exe"
>                   DownloadUrl="
> http://go.microsoft.com/fwlink/?LinkId=164193";
>                   DetectCondition="Netfx4FullVersion AND (NOT VersionNT64
> OR Netfx4x64FullVersion)" />
>     </PackageGroup>
>   </Fragment>
> </Wix>
>
>
> ________
>
>
>
> I set one or both packages to Absent or ForceAbsent on PlanPackageBegin,
> but the package(s) is never removed.
>
> Am I approaching this the correct way?
>
> NOTICE: This electronic mail message and any files transmitted with it are
> intended
> exclusively for the individual or entity to which it is addressed. The
> message,
> together with any attachment, may contain confidential and/or privileged
> information.
> Any unauthorized review, use, printing, saving, copying, disclosure or
> distribution
> is strictly prohibited. If you have received this message in error, please
> immediately advise the sender by reply email and delete all copies.
>
> ------------------------------------------------------------------------------
> Everyone hates slow websites. So do we.
> Make your web apps faster with AppDynamics
> Download AppDynamics Lite for free today:
> http://p.sf.net/sfu/appdyn_d2d_mar
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>
------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_mar
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to