From: Francis K. <ka...@gm...> - 2005-06-02 22:38:41
|
I'll definitely open a bug on this, but personally I think it a little odd= =20 that a Module requires a ComponentRef for fragments when it doesn't for=20 non-fragments? I'd think that a FragmentRef would work (even if ComponentRe= f=20 is the preferred way). That said a ComponentGroupRef does seem a pretty=20 reasonable solution too. Unfortunately, it doesn't work. :) This is what I get when I use the ComponentGroupRef (candle works fine, bu= t=20 light doesn't): =20 light.exe : error LGHT0001 : Unexpected complex reference child type Exception Type: System.ApplicationException Stack Trace: at Microsoft.Tools.WindowsInstallerXml.Linker.ProcessComplexReferences(Outp= ut=20 output, Section section, StringCollection referencedSymbols,=20 ComplexReferenceCollection componentsToComponentGroupsComplexReferences,=20 ConnectToFeatureCollection componentGroupsToFeatures,=20 ConnectToFeatureCollection componentsToFeatures, ConnectToFeatureCollection= =20 featuresToFeatures) at Microsoft.Tools.WindowsInstallerXml.Linker.ResolveReferences(Output=20 output, Section section, SymbolCollection allSymbols, StringCollection=20 referencedSymbols, ArrayList unresolvedReferences,=20 ComplexReferenceCollection componentsToComponentGroupsComplexReferences,=20 ConnectToFeatureCollection componentGroupsToFeatures,=20 ConnectToFeatureCollection componentsToFeatures, ConnectToFeatureCollection= =20 featuresToFeatures) at Microsoft.Tools.WindowsInstallerXml.Linker.Link(Intermediate[]=20 intermediates) at Microsoft.Tools.WindowsInstallerXml.Tools.Light.Run(String[] args) I guess I'll log a bug on that too. For reference, the equivalent=20 ComponentRef tags work fine (which is the solution I'll use for now).=20 Anyhow, thanks! This clears things up and gives me a reasonable way to do= =20 things. -Francis |