ComponentRef's & ComponentGroups are used in your Feature Tree not your
Directory Tree. If you want stuff to be in one place rather than another
simply move the Component Elements & everything inside them to where you
want them in your Directory Tree.

See -> http://www.tramontana.co.hu/wix/lesson1.php#1.2

Palbinder Sandher 
Software Deployment & IT Administrator
T: +44 (0) 141 945 8500 
F: +44 (0) 141 945 8501 

http://www.iesve.com 
**Design, Simulate + Innovate with the <Virtual Environment>**
Integrated Environmental Solutions Limited. Registered in Scotland No.
SC151456 
Registered Office - Helix Building, West Of Scotland Science Park,
Glasgow G20 0SP
Email Disclaimer


-----Original Message-----
From: Rory Primrose [mailto:r...@neovolve.com] 
Sent: 25 May 2010 06:41
To: WiX Mail List (wix-users@lists.sourceforge.net)
Subject: [WiX-users] Adding ComponentGroupRef to directories

Hi guys,

I have created a WiX 3.5 project in VS2010 and added a few project
references. One of the projects is a WCF IIS project. Wix has
automatically generated the following Product.Generated.wxs file:

<?xml version='1.0' encoding='UTF-8'?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi";>
  <Fragment>
    <ComponentGroup Id="Product.Generated">
      <ComponentGroupRef Id="MyProject.Core.Binaries" />
      <ComponentGroupRef Id="MyProject.Core.Content" />
      <ComponentGroupRef Id="MyProject.Core.Satellites" />
      <ComponentGroupRef Id="MyProject.Service.IisHost.Binaries" />
      <ComponentGroupRef Id="MyProject.Service.IisHost.Content" />
      <ComponentGroupRef Id="MyProject.Service.IisHost.Satellites" />
      <ComponentGroupRef Id="MyProject.ServiceContracts.Binaries" />
      <ComponentGroupRef Id="MyProject.ServiceContracts.Content" />
      <ComponentGroupRef Id="MyProject.ServiceContracts.Satellites" />
      <ComponentGroupRef Id="MyProject.Service.Binaries" />
      <ComponentGroupRef Id="MyProject.Service.Content" />
      <ComponentGroupRef Id="MyProject.Service.Satellites" />
    </ComponentGroup>
  </Fragment>
</Wix>

My issue is that I want Binaries and Satellites groups to go to
INSTALLLOCATION\bin with Content groups going to just INSTALLLOCATION. I
have added the ComponentGroupRef to the product feature so it gets
installed as requested, but I can't figure out how to assign different
ComponentGroupRef items to different locations.

My features set looks like this:

    <Feature Id="ProductFeature"
             Title="MyProject Service"
             Level="1"
             AllowAdvertise="no"
             InstallDefault="local"
             Absent="disallow"
             ConfigurableDirectory="INSTALLLOCATION">
      <!-- Note: The following ComponentGroupRef is required to pull in
generated authoring from project references. -->
      <ComponentGroupRef Id="Product.Generated" />

      <ComponentRef Id="ServiceWebsite" />

      <Feature Id="Postgres"
               Title="Postgres Support"
               Level="1"
               AllowAdvertise="no"
               InstallDefault="local"
               Absent="allow">
        <ComponentRef Id="PostgresComponent" />
      </Feature>

    </Feature>

My directory structure looks like this:

    <Directory Id="TARGETDIR"
               Name="SourceDir">
      <Directory Id="ProgramFilesFolder">
        <Directory Id="INSTALLLOCATION"
                   Name="MyProject.Service">

          <Directory Id="bin"
                     Name="bin">

          </Directory>
        </Directory>
      </Directory>
    </Directory>

So I want an outcome like this:

    <Directory Id="TARGETDIR"
               Name="SourceDir">
      <Directory Id="ProgramFilesFolder">
        <Directory Id="INSTALLLOCATION"
                   Name="MyProject.Service">

      <ComponentGroupRef Id="MyProject.Core.Content" />
      <ComponentGroupRef Id="MyProject.Service.IisHost.Content" />
      <ComponentGroupRef Id="MyProject.ServiceContracts.Content" />
      <ComponentGroupRef Id="MyProject.Service.Content" />

          <Directory Id="bin"
                     Name="bin">

      <ComponentGroupRef Id="MyProject.Core.Binaries" />
      <ComponentGroupRef Id="MyProject.Core.Satellites" />
      <ComponentGroupRef Id="MyProject.Service.IisHost.Binaries" />
      <ComponentGroupRef Id="MyProject.Service.IisHost.Satellites" />
      <ComponentGroupRef Id="MyProject.ServiceContracts.Binaries" />
      <ComponentGroupRef Id="MyProject.ServiceContracts.Satellites" />
      <ComponentGroupRef Id="MyProject.Service.Binaries" />
      <ComponentGroupRef Id="MyProject.Service.Satellites" />

          </Directory>
        </Directory>
      </Directory>
    </Directory>

Can someone point me in the right direction?

Cheers,

Rory

------------------------------------------------------------------------
------

_______________________________________________
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