I'm currently authoring the installer to our product which is an add-on to 
another product. This means I have to drop down files in a location I determine 
at install time via registry searches. The tricky part is that there are 
different flavors of the product I'm an add-on for and the various flavors all 
have different registry keys that specify where they got installed.

My goal is to only install my files to the locations necessary for any of the 
flavors that are already installed of the parent product. This is fairly 
straightforward (at least I think it's been working fine) for files that go to 
flavor specific locations. I've defined flavor-specific components for each of 
those and I just use condition elements on them as appropriate. This leads to 
copies of the same files being installed to their flavor specific locations.

My problem is with files that will actually end up going to the same physical 
folder. My Directory elements are all rooted off of the various registry search 
properties I do at the beginning to identify which flavors are installed. The 
way I was thinking I'd do it (but not loving) was to define flavor-specific 
components for those files and condition them in such a way that only one of 
them would ever be true. Something like:

<Component Id='Comp_F1_XXX' ... >
    <Condition> FLAVOR1 </Condition>
    ...
</Component>
<Component Id='Comp_F2_XXX' ... >
    <Condition> FLAVOR2 AND NOT FLAVOR1 </Condition>
    ...
</Component>

This would seem to guarantee that the files get installed using a root 
directory property that I know actually exists (i.e., defined and set to a 
valid path).

However, I'm now getting an ICE:

warning LGHT1076: ICE30: The target file 'XXX' might be installed in 
'[TARGETDIR]\Xml\Schemas' by two different conditionalized components on an LFN 
system: 'Comp_F1_XXX' and 'Comp_F2_XXX'. If the conditions are not mutually 
exclusive, this will break the component reference counting system.

Even if I get this ICE to go away (which would be a start) I have a feeling I'm 
still not doing it the best way. Any guidance is appreciated. I can also 
provide more info if it's needed or would help.

Thanks!
Gus


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to