I've been trying to use WiX 3.7 to install a COM+ assembly. I've been using several WiX code snippets I found here on StackOverflow. Although I can generate an MSI, when I then install the msi it fails with errors that look like this:
RegisterComPlusAssemblies: DLL: C:\Program Files\Kutana\Kappris\Carson.dll
ComPlusInstallExecute: ExceptionInfo: Code='0', Source='System.EnterpriseServices', Description='Could not install type library 'C:\Program Files\Kutana\Kappris\Carson.tlb' into application 'COM+ Carson - Kappris Print Cache'.', HelpFile='', HelpContext='0'
ComPlusInstallExecute: Error 0x80020009: Failed to invoke RegistrationHelper.InstallAssembly() method
ComPlusInstallExecute: Error 0x80020009: Failed to register .NET assembly
ComPlusInstallExecute: Error 0x80020009: Failed to register assembly, key: MyComPlusAssembly
ComPlusInstallExecute: Error 0x80020009: Failed to register assemblies
No matter what I try I can't do this with WiX. I know other people have had the same problem installing COM+ with WiX but I don't think anyone's got further than blaming WiX.
I wondered if it would be OK to manually export the COM+ application from the Component Services control panel, which creates an MSI installer. And then I could use dark.exe to generate WiX source code from the MSI.
I've actually done this and I can build an MSI that installs the COM+ App. But is this a good idea?
I have misgivings: Firstly, the component now gets registered in the GAC even though when I manually registered the assembly using regsvcs it wasn't in the GAC. Secondly, the exported MSI contains three files - the dll, its associated tlb and another 'APL' file which is an undocumented internal format generated as a side-effect of the export.
What problems can people see using this method of installing a COM+ App? Should I worry that I don't know anything about the APL file? If you can tell me how to do it using WiX I'd be happy with that. Just looking to be able to do the installation...