Use smaller Fragments.  You can nest ComponentGroupRefs under ComponentGroups.  
So split your Fragments into their smallest parts (optional stuff in an 
"Optional Fragment" and required stuff in "Required Fragment").  Then you can 
have Optional "nest a reference to Required" Component Group.  It'll all stitch 
back together.

-----Original Message-----
From: Drew Turner [mailto:dr...@pandell.com]
Sent: Monday, December 22, 2008 14:59
To: wix-users@lists.sourceforge.net
Subject: [WiX-users] WiXLib - Including some or all components.

Hello,



We have recently updated our solution from using a Merge Module to
utilize a WiX library.  Right now the library is used to include a set
of binaries in other projects.  Basically there is a DirectoryRef that
contains a of the component consisting of the (dll, pdb and xml files).
Then there is a ComponentGroup with references to each of the
components.



Here is the basic structure of the library.



<Fragment>

       <DirectoryRef Id="AllBinaries">

              <Component Id="RequiredBinary" Guid="...">

                     <File></File>

                     ...

              </Component>

              <Component Id="OptionalBinary" Guid="...">

                     <File></File>

                     ...

              </Component>

              ...

                </DirectoryRef>

       <ComponentGroup Id="ComponentGroup">

              <ComponentRef Id="RequiredBinary" />

              <ComponentRef Id="OptionalBinary" />

       </ComponentGroup>

</Fragment>



The directory is referenced under a target directory and the component
group is referenced under a feature in the setup project utilizing this
WiX library.



This approach works great for the scenario when we want to include the
entire set of binaries.  Although it seems to fall down when we only
want to include certain components.  For example say I only wanted to
include the RequiredBinary for a certain project.  I was wondering if
you had any suggestions on a better structure or technique to share some
or all of the components.  Everything that I tried resulted in a
duplicate directory reference or Orphaned components.  Also I was trying
to avoid including each component individually in the scenario where we
are including all binaries.



Thanks,



Drew Turner
Developer

Pandell Technology Corp.
d: 403.685.6236
c: 403.880.8838
e: dr...@pandell.com



------------------------------------------------------------------------------
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


------------------------------------------------------------------------------
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to