Hi Pally,

I understand that would be the expected outcome, but where are those components 
defined? My understanding is the heat uses these references to dynamically 
determine the components and their contents at compile time based on the 
contents of the referenced project. I can't find any actual definition of those 
component groups in the WiX project.

Cheers,

Rory


-----Original Message-----
From: Pally Sandher [mailto:pally.sand...@iesve.com] 
Sent: Tuesday, 25 May 2010 7:36 PM
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] Adding ComponentGroupRef to directories

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

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

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

Reply via email to