Hi Neil, thanks for your reply. All in all my code is from your tutorial and it works fine for native assemblys... but not for COM+ assemblys.
Any ideas why? Something wrong in my code? Does anyone have a working example? Regards, Davide 2014-04-10 14:44 GMT+02:00 Neil Sleightholm <[email protected]>: > Is there anything here that helps > http://wix.tramontana.co.hu/tutorial/com-expression-syntax-miscellanea/com- > applications - I wrote it a long time ago and am not sure if it is still > valid but it might be a good starting point. > > Neil > > > >Sorry for this repost... but does anyone have a solution for this? > >I'm close to write my own CA... > > > >Cheers, > > > >Davide > > > > > >2014-04-04 8:22 GMT+02:00 Davide <[email protected]>: > > > >> Hi all, > >> > >> I spent a whole day with this problem now and would appreciate any help! > >> > >> To make it really easy I picked a sample COM+ Application from the MSDN > >>( > >> > >> > http://code.msdn.microsoft.com/windowsdesktop/Creating-a-COM-Component-7f > >>fbab9b) > >> and tried to register it in a COM+ application through WIX - without > >> success :( > >> > >> Here is my code: > >> > >> <ComponentGroup Id="BinFileGroup"> > >> <Component Id="MydotNet_dll" DiskId="1" > >> Guid="082B553D-C3D1-4D10-BA4F-8048C84C9C99" Directory="DIR_Bin"> > >> <Class Id="1F2642C4-BDE1-3B50-9DDE-F95747078F71" > >> Context="InprocServer32" Description="COMPlusServicesExample.Customers" > >> ThreadingModel="both" ForeignServer="mscoree.dll"> > >> <ProgId Id="COMPlusServicesExample.Customers" > >> Description="COMPlusServicesExample.Customers" /> > >> </Class> > >> <Class Id="94464148-E1E2-3F84-BEE9-7C72F0D0E01D" > >> Context="InprocServer32" > >>Description="COMPlusServicesExample.CustomersDB" > >> ThreadingModel="both" ForeignServer="mscoree.dll"> > >> <ProgId Id="COMPlusServicesExample.CustomersDB" > >> Description="COMPlusServicesExample.CustomersDB" /> > >> </Class> > >> <File Id="COMPlusDotNet" Name="COMPlusDotNet.dll" > >> Source="$(var.BinDir)\COMPlusDotNet.dll" KeyPath="yes" Assembly="no" /> > >> <RegistryValue Root="HKCR" > >> Key="CLSID\{1F2642C4-BDE1-3B50-9DDE-F95747078F71}\Implemented > >> Categories\{62C8FE65-4EBB-45e7-B440-6E39B2CDBF29}" Value="" > >>Type="string" > >> Action="write" /> > >> <RegistryValue Root="HKCR" > >> > >>Key="CLSID\{1F2642C4-BDE1-3B50-9DDE-F95747078F71}\InprocServer32\1.0.5206 > >>.28472" > >> Name="Class" Value="COMPlusServicesExample.Customers" Type="string" > >> Action="write" /> > >> <RegistryValue Root="HKCR" > >> > >>Key="CLSID\{1F2642C4-BDE1-3B50-9DDE-F95747078F71}\InprocServer32\1.0.5206 > >>.28472" > >> Name="Assembly" Value="COMPlusDotNet, Version=1.0.5206.28472, > >> Culture=neutral, PublicKeyToken=2cda2eca579c96b4" Type="string" > >> Action="write" /> > >> <RegistryValue Root="HKCR" > >> > >>Key="CLSID\{1F2642C4-BDE1-3B50-9DDE-F95747078F71}\InprocServer32\1.0.5206 > >>.28472" > >> Name="RuntimeVersion" Value="v2.0.50727" Type="string" Action="write" /> > >> <RegistryValue Root="HKCR" > >> > >>Key="CLSID\{1F2642C4-BDE1-3B50-9DDE-F95747078F71}\InprocServer32\1.0.5206 > >>.28472" > >> Name="CodeBase" Value="file:///[#COMPlusDotNet]" Type="string" > >> Action="write" /> > >> <RegistryValue Root="HKCR" > >> Key="CLSID\{1F2642C4-BDE1-3B50-9DDE-F95747078F71}\InprocServer32" > >> Name="Class" Value="COMPlusServicesExample.Customers" Type="string" > >> Action="write" /> > >> <RegistryValue Root="HKCR" > >> Key="CLSID\{1F2642C4-BDE1-3B50-9DDE-F95747078F71}\InprocServer32" > >> Name="Assembly" Value="COMPlusDotNet, Version=1.0.5206.28472, > >> Culture=neutral, PublicKeyToken=2cda2eca579c96b4" Type="string" > >> Action="write" /> > >> <RegistryValue Root="HKCR" > >> Key="CLSID\{1F2642C4-BDE1-3B50-9DDE-F95747078F71}\InprocServer32" > >> Name="RuntimeVersion" Value="v2.0.50727" Type="string" Action="write" /> > >> <RegistryValue Root="HKCR" > >> Key="CLSID\{1F2642C4-BDE1-3B50-9DDE-F95747078F71}\InprocServer32" > >> Name="CodeBase" Value="file:///[#COMPlusDotNet]" Type="string" > >> Action="write" /> > >> <RegistryValue Root="HKCR" > >> Key="CLSID\{94464148-E1E2-3F84-BEE9-7C72F0D0E01D}\Implemented > >> Categories\{62C8FE65-4EBB-45e7-B440-6E39B2CDBF29}" Value="" > >>Type="string" > >> Action="write" /> > >> <RegistryValue Root="HKCR" > >> > >>Key="CLSID\{94464148-E1E2-3F84-BEE9-7C72F0D0E01D}\InprocServer32\1.0.5206 > >>.28472" > >> Name="Class" Value="COMPlusServicesExample.CustomersDB" Type="string" > >> Action="write" /> > >> <RegistryValue Root="HKCR" > >> > >>Key="CLSID\{94464148-E1E2-3F84-BEE9-7C72F0D0E01D}\InprocServer32\1.0.5206 > >>.28472" > >> Name="Assembly" Value="COMPlusDotNet, Version=1.0.5206.28472, > >> Culture=neutral, PublicKeyToken=2cda2eca579c96b4" Type="string" > >> Action="write" /> > >> <RegistryValue Root="HKCR" > >> > >>Key="CLSID\{94464148-E1E2-3F84-BEE9-7C72F0D0E01D}\InprocServer32\1.0.5206 > >>.28472" > >> Name="RuntimeVersion" Value="v2.0.50727" Type="string" Action="write" /> > >> <RegistryValue Root="HKCR" > >> > >>Key="CLSID\{94464148-E1E2-3F84-BEE9-7C72F0D0E01D}\InprocServer32\1.0.5206 > >>.28472" > >> Name="CodeBase" Value="file:///[#COMPlusDotNet]" Type="string" > >> Action="write" /> > >> <RegistryValue Root="HKCR" > >> Key="CLSID\{94464148-E1E2-3F84-BEE9-7C72F0D0E01D}\InprocServer32" > >> Name="Class" Value="COMPlusServicesExample.CustomersDB" Type="string" > >> Action="write" /> > >> <RegistryValue Root="HKCR" > >> Key="CLSID\{94464148-E1E2-3F84-BEE9-7C72F0D0E01D}\InprocServer32" > >> Name="Assembly" Value="COMPlusDotNet, Version=1.0.5206.28472, > >> Culture=neutral, PublicKeyToken=2cda2eca579c96b4" Type="string" > >> Action="write" /> > >> <RegistryValue Root="HKCR" > >> Key="CLSID\{94464148-E1E2-3F84-BEE9-7C72F0D0E01D}\InprocServer32" > >> Name="RuntimeVersion" Value="v2.0.50727" Type="string" Action="write" /> > >> <RegistryValue Root="HKCR" > >> Key="CLSID\{94464148-E1E2-3F84-BEE9-7C72F0D0E01D}\InprocServer32" > >> Name="CodeBase" Value="file:///[#COMPlusDotNet]" Type="string" > >> Action="write" /> > >> <complus:ComPlusApplication Id="MydotNet" Name="COM Plus > >>Services > >> Example"> > >> <complus:ComPlusAssembly Id="COMPlusDotNet" > >> TlbPath="[#COMPlusDotNetTlb]" Type=".net" DllPath="[#COMPlusDotNet]"> > >> <complus:ComPlusComponent Id="CheckInterface" > >> CLSID="1F2642C4-BDE1-3B50-9DDE-F95747078F71"/> > >> <complus:ComPlusComponent Id="CheckInterface2" > >> CLSID="94464148-E1E2-3F84-BEE9-7C72F0D0E01D"/> > >> </complus:ComPlusAssembly> > >> </complus:ComPlusApplication> > >> </Component> > >> <Component Id="MydotNet_tlb" DiskId="1" > >> Guid="82E37437-9A85-4D93-985A-930AE8B5562B" Directory="DIR_Bin"> > >> <File Id="COMPlusDotNetTlb" Name="COMPlusDotNet.tlb" > >> Source="$(var.BinDir)\COMPlusDotNet.tlb" KeyPath="yes" > > >> <TypeLib Id="{382C73BF-1243-3749-ABFC-EE2FF15CC160}" > >> Description="This is an example for creating COM+ Serviced applications > >>in > >> .NET" HelpDirectory="DIR_Bin" Language="0" MajorVersion="1" > >> MinorVersion="0"> > >> <Interface Id="{4F36FC57-4D0A-38BF-9A0D-ECDD5C8E29A4}" > >> Name="_Customers" > >>ProxyStubClassId="{00020424-0000-0000-C000-000000000046}" > >> ProxyStubClassId32="{00020424-0000-0000-C000-000000000046}" /> > >> <Interface Id="{68D25731-3207-39B0-AE21-CE6AD66A2F8A}" > >> Name="_CustomersDB" > >> ProxyStubClassId="{00020424-0000-0000-C000-000000000046}" > >> ProxyStubClassId32="{00020424-0000-0000-C000-000000000046}" /> > >> </TypeLib> > >> </File> > >> </Component> > >> </ComponentGroup> > >> > >> The error message I get: > >> > >> ComPlusInstallExecute: ExceptionInfo: Code='0', > >> Source='System.EnterpriseServices', Description='Could not install type > >> library 'C:\ApplDir\COMPlusDotNet.tlb' into application COM Plus > >>Services > >> Example', 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: COMPlusDotNet > >> ComPlusInstallExecute: Error 0x80020009: Failed to register assemblies > >> > >> When I comment out this part: > >> > >> <complus:ComPlusAssembly Id="COMPlusDotNet" > >> TlbPath="[#COMPlusDotNetTlb]" Type=".net" DllPath="[#COMPlusDotNet]"> > >> <complus:ComPlusComponent Id="CheckInterface" > >> CLSID="1F2642C4-BDE1-3B50-9DDE-F95747078F71"/> > >> <complus:ComPlusComponent Id="CheckInterface2" > >> CLSID="94464148-E1E2-3F84-BEE9-7C72F0D0E01D"/> > >> </complus:ComPlusAssembly> > >> > >> An empty ComPlusApplication is created successfully. When I then > >>manually > >> install the tlb (or the dll) via MMC snap-in into this COM+ application > >>it > >> works fine. > >> > >> I also tried the DllPathFromGAC attribute and register the DLL in GAC, > >>but > >> it also failed with an error message, that the assembly name could not > >>be > >> found in the GAC. > >> > >> Thank you in advance! > >> > >> Best regards, > >> > >> Davide > >> > >-------------------------------------------------------------------------- > >---- > >Put Bad Developers to Shame > >Dominate Development with Jenkins Continuous Integration > >Continuously Automate Build, Test & Deployment > >Start a new project now. Try Jenkins in the cloud. > >http://p.sf.net/sfu/13600_Cloudbees > >_______________________________________________ > >WiX-users mailing list > >[email protected] > >https://lists.sourceforge.net/lists/listinfo/wix-users > > > > ------------------------------------------------------------------------------ > Put Bad Developers to Shame > Dominate Development with Jenkins Continuous Integration > Continuously Automate Build, Test & Deployment > Start a new project now. Try Jenkins in the cloud. > http://p.sf.net/sfu/13600_Cloudbees > _______________________________________________ > WiX-users mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/wix-users > ------------------------------------------------------------------------------ Put Bad Developers to Shame Dominate Development with Jenkins Continuous Integration Continuously Automate Build, Test & Deployment Start a new project now. Try Jenkins in the cloud. http://p.sf.net/sfu/13600_Cloudbees _______________________________________________ WiX-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/wix-users

