windowscomcom+component-services

Difference between "traditional" COM and COM+ (in Component Services)


By the "traditional" way I mean registering the DLL in registry.

There seems to be another method to set up it by going to mmc->Component Services->COM+ Applications and adding the .tlb file.

I have a COM library that supports both methods. When it installs, it registers itself in the registry as a COM component and it works fine. However, when I added the .tlb file using the Component Services method, the behavior seems to be different and it starts giving out errors.

I suspect it has something to do with marshaling and inter-process object transfer? (Sorry, I'm really a noob in the COM area)

Can anyone point me to a good resource to clear my understanding?


Solution

  • COM+ (Component Services) provides a lot of infrastructure out of the box; for instance COM+ provides transaction, security, object pooling and some other services.

    When you register a COM component under COM+ it will run "Out Of Process"; in this mode you are guaranteed to have a proxy between your COM server and its clients.

    The best place I can think of for learning more about COM+ is the official MS site: http://msdn.microsoft.com/en-us/library/ms685978(VS.85).aspx