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?
COM+ is an enhanced version of COM that provides better security and improved performance. DCOM (Distributed Component Object Model) is an extension of COM that allows applications and components to communicate with each other over a network.
Component services define an application programming model for developing distributed applications. They also provide a run-time infrastructure for deploying and managing these applications. Component services enable you to break down transactions into components that perform discrete functions.
You'll find components services from your Start menu under the Control Panel under Administrative Tools. It's this option right at the top here for Component Services. The Component Services view is very similar to that Microsoft Management Console view, where your options are on the left.
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
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With