Suppose you have the following components:
* ComponentA
* ComponentB
* ComponentC
* ComponentD

Suppose that we want FeatureA (subset) to install only ComponentA and 
ComponentB.
Suppose that we want FeatureB (superset) to install everything in FeatureA 
*and* ComponentC and ComponentD.

FeatureB {
    ComponentC
    ComponentD
    FeatureA {
        ComponentA
        ComponentB
    }
}

The key here is to set FeatureA to follow the parent feature (FeatureB). Now in 
the standard feature selection dialog a user can select only FeatureA _or_ they 
can select FeatureB which automatically selects FeatureA. With this approach 
you don't need a separate dialog to select the features thus getting feature 
selection to occur at the correct time.

Edwin G. Castro
Software Developer - Staff
Digital Channels
Fiserv
Office: 503-746-0643
Fax: 503-617-0291
www.fiserv.com
Please consider the environment before printing this e-mail

> -----Original Message-----
> From: Rob Mensching [mailto:r...@robmensching.com]
> Sent: Thursday, July 28, 2011 11:40 AM
> To: General discussion for Windows Installer XML toolset.
> Subject: Re: [WiX-users] RemoveExistingProducts doesn't work in 3.5
> 
> Is it possible to organize your Components so that one Feature has most
> Components and the other Feature has less Components? A Component can
> be installed by two Features.  Maybe I'm misunderstanding.
> 
> BTW, deleting files that the Windows Installer thinks should be installed is a
> *very bad* design. You'll end up in an immediate "repair" state that has real
> potential of creating problems for you all over the place later.
> 
> ...or maybe I just don't really understand the scenario.
> 
> On Thu, Jul 28, 2011 at 7:44 AM, Peter Stein <pst...@instec-corp.com>
> wrote:
> 
> > I'm not attempting to upgrade anything. I'm trying to use this
> > mechanism to solve a problem with feature set installation (which I
> > described in another email).
> >
> > Basically my installer users can choose between 2 features in a
> > dialog. The problem is that the dialog choice is not available at the
> > time of CostFinalize and it doesn't seem possible to re-sequence the
> > UI standard actions. So simply modifying ADDLOCAL does not work.
> >
> > The relationship between these 2 features is that one is a subset of
> > the other. So two possible strategies may work: 1. Install the subset
> > and possibly add the other files, OR 2. Install the superset and subtract 
> > (i.e.
> > remove files). When I discovered the post that contained "RemoveFiles"
> > I was hopeful that usage of  "Remove" elements might lend itself
> > towards a solution based on the 2nd strategy. But based on your email
> > I appear to be barking up the wrong tree.
> >
> > It looks like it will be necessary to resort to a very ugly kludge,
> > namely including a helper exe in the installer that will remove the
> unwanted files.
> >
> > -----Original Message-----
> > From: Wilson, Phil [mailto:phil.wil...@invensys.com]
> > Sent: Wednesday, July 27, 2011 7:10 PM
> > To: General discussion for Windows Installer XML toolset.
> > Subject: Re: [WiX-users] RemoveExistingProducts doesn't work in 3.5
> >
> > There's a lot of other stuff that needs doing for upgrades to work,
> > and you haven't said if you actually have it, such as upgrade
> > specifications in your WiX.
> >
> > I'd look at all your FindRelatedProducts actions in your install to
> > see if they report anything about finding older versions of your product.
> >
> > It's also not obvious that this is a solution to your problem,
> > whatever it is. During an upgrade the state of files being installed
> > or removed is about whether they have the same component guids or not.
> > In the scenario where RemoveExistingProducts after InstallFinalize
> > works, look at it something like this as a general flow guide:
> >
> > Every file in your original install has a guid associated with it.
> >
> > All the files in your upgrade where you want to replace the old file
> > with your new file need the same component guid.
> >
> > The upgrade install runs. Every file gets replaced, based on file
> > version rules where applicable.  Where the component guids are
> > identical the ref count on that guid increments from 1 to 2.
> >
> > At the end the RemoveExistingProducts runs. It will look at each
> > file's guid and decrement the ref count. If it goes from 2 to 1 the
> > file will not be removed (it's in use by the product you just
> > installed). If the ref count on a guid goes down to zero then nothing is 
> > using
> it. So it gets removed.
> >
> > If you don't want filexyz.exe in the product then just don't put it in
> > your upgrade. Once you get the upgrade really working with
> > RemoveExistingProducts, if it's not being removed then something else
> > is going on (clobbered ref counts, marked permanent etc).
> >
> > Phil Wilson
> >
> >
> > -----Original Message-----
> > From: Peter Stein [mailto:pst...@instec-corp.com]
> > Sent: Wednesday, July 27, 2011 4:40 PM
> > To: 'WiX-users@lists.sourceforge.net'
> > Subject: [WiX-users] RemoveExistingProducts doesn't work in 3.5
> >
> > I based my code on this:
> > http://stackoverflow.com/questions/3287626/wix-installer-remove-files-
> > on-uninstall-but-not-on-upgrade
> >
> > I saw no complaints about the suggested answer so I assumed it worked.
> > But when I adapted to my code it does nothing.
> > In product.wxs:
> >
> > <InstallExecuteSequence>
> >      <RemoveExistingProducts
> > After='InstallFinalize'>1</RemoveExistingProducts>
> > </InstallExecuteSequence>
> >
> > And in my main installation directory I added:
> >
> > <Component Id="RemoveFilesComponent"
> > Guid="A749202E-E09A-4DED-B205-337B0E7FB736">
> >        <RemoveFile Id="R1" On="both" Name="filexyz.exe"/> </Component>
> >
> > The installer runs and completes without error or warnings, but
> > filexyz.exe is not removed. As an experiment I tried "*.*", but that
> > didn't remove anything neither.
> > The msi.log shows RemoveExistingProducts being invoked, but it doesn't
> > remove anything.
> >
> > What am I missing?
> >
> > ------------------------------------------------------------------------------
> > Got Input?   Slashdot Needs You.
> > Take our quick survey online.  Come on, we don't ask for help often.
> > Plus, you'll get a chance to win $100 to spend on ThinkGeek.
> > http://p.sf.net/sfu/slashdot-survey
> > _______________________________________________
> > WiX-users mailing list
> > WiX-users@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/wix-users
> >
> >
> > *** Confidentiality Notice: This e-mail, including any associated or
> > attached files, is intended solely for the individual or entity to
> > which it is addressed. This e-mail is confidential and may well also
> > be legally privileged. If you have received it in error, you are on
> > notice of its status. Please notify the sender immediately by reply
> > e-mail and then delete this message from your system. Please do not
> > copy it or use it for any purposes, or disclose its contents to any
> > other person. This email comes from a division of the Invensys Group,
> > owned by Invensys plc, which is a company registered in England and
> > Wales with its registered office at 3rd Floor, 40 Grosvenor Place,
> > London, SW1X 7AW (Registered number 166023). For a list of European
> > legal entities within the Invensys Group, please go to
> >
> http://www.invensys.com/legal/default.asp?top_nav_id=77&nav_id=80&pr
> ev
> > _id=77
> > .
> >
> > You may contact Invensys plc on +44 (0)20 3155 1200 or e-mail
> > recept...@invensys.com. This e-mail and any attachments thereto may be
> > subject to the terms of any agreements between Invensys (and/or its
> > subsidiaries and affiliates) and the recipient (and/or its
> > subsidiaries and affiliates).
> >
> >
> >
> >
> > ------------------------------------------------------------------------------
> > Got Input?   Slashdot Needs You.
> > Take our quick survey online.  Come on, we don't ask for help often.
> > Plus, you'll get a chance to win $100 to spend on ThinkGeek.
> > http://p.sf.net/sfu/slashdot-survey
> > _______________________________________________
> > WiX-users mailing list
> > WiX-users@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/wix-users
> >
> >
> > ------------------------------------------------------------------------------
> > Got Input?   Slashdot Needs You.
> > Take our quick survey online.  Come on, we don't ask for help often.
> > Plus, you'll get a chance to win $100 to spend on ThinkGeek.
> > http://p.sf.net/sfu/slashdot-survey
> > _______________________________________________
> > WiX-users mailing list
> > WiX-users@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/wix-users
> >
> >
> 
> 
> --
> virtually, Rob Mensching - http://RobMensching.com LLC
> ------------------------------------------------------------------------------
> Got Input?   Slashdot Needs You.
> Take our quick survey online.  Come on, we don't ask for help often.
> Plus, you'll get a chance to win $100 to spend on ThinkGeek.
> http://p.sf.net/sfu/slashdot-survey
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
------------------------------------------------------------------------------
Got Input?   Slashdot Needs You.
Take our quick survey online.  Come on, we don't ask for help often.
Plus, you'll get a chance to win $100 to spend on ThinkGeek.
http://p.sf.net/sfu/slashdot-survey
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to