It's very possible the COM+ CA in WiX toolset doesn't do exactly that. Perhaps you could take a look at the code and see what is wrong? Code is in src\ext\ComPlusExtension. I know nothing about COM+ so I'm not much help beyond that.
On Wed, Apr 24, 2013 at 12:04 AM, Bart van Lierop <bartvanlie...@gmail.com>wrote: > I'm currently porting a Visual Studio setup and deployment project to WiX. > Part of the setup is to install a COM+ Application with a specific COM+ > component that has a bunch of interfaces and methods. > > My problem is that when i specify the native (C++) DllPath and specify one > single ComPlusComponent, the MSI installs all COM+ components (classes in > the dll). Is there maybe some way to select individual COM+ components that > have to be installed without installing everything? > > So my desired end result would be when I look in Component Services under > COM+ Applications: > -My COM+ App > -Components > +*MyComp.MyClass3* > ..... > > The WiX code looks like this now: > > <File Id="MYCOMP_Dll" Source="path..to...MyComp.dll" KeyPath="yes" > Vital="yes"> > <....TypeLib Class and ProgId stuff from heat.exe output....> > </File> > > <complus:ComPlusApplication Id="MyComApplication" Name="My COM+ App"> > <complus:ComPlusAssembly Id="MyComAssembly" Type="native" > DllPath="[#MYCOMP_Dll]"> > <complus:ComPlusComponent Id="MyComComponent3" CLSID="<b>MyClass3's > CLSID HERE" /> > </complus:ComPlusAssembly> > </complus:ComPlusApplication> > > I would expect that Component Services shows only the ComPlusComponent I > defined in my .wxs file. But somehow all components within that dll are > there... > > *More information that might help: > > The original Setup/Deployment project used a custom action written in C# > that used the method InstallMultipleComponents() defined as: > > void InstallMultipleComponents(string bstrApplIDOrName, ref System.Array > ppsaVarFileNames, ref System.Array ppsaVarCLSIDs) > Member of COMAdmin.ICOMAdminCatalog2 > > At runtime it would be InstallMultipleComponents("My COM+ App", > "MyComp.dll", "CLSID of MyClass3 here"); --> This registers only the > specific component that I specified via the CLSID argument so basically i'm > looking for the equivalent in WiX. > > I'm using WiX 3.7 and VS2010. Testing happens on Windows 2008R2.* > > ------------------------------------------------------------------------------ > Try New Relic Now & We'll Send You this Cool Shirt > New Relic is the only SaaS-based application performance monitoring service > that delivers powerful full stack analytics. Optimize and monitor your > browser, app, & servers with just a few lines of code. Try New Relic > and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_apr > _______________________________________________ > WiX-users mailing list > WiX-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/wix-users > > ------------------------------------------------------------------------------ Try New Relic Now & We'll Send You this Cool Shirt New Relic is the only SaaS-based application performance monitoring service that delivers powerful full stack analytics. Optimize and monitor your browser, app, & servers with just a few lines of code. Try New Relic and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_apr _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users