Distributed Component Object Model :
DCOM is next-gen Component Object Model (COM). DCOM allows an application's component reside on different computers, which means that the application don't need to be concerned that one COM object might be on the local computer and another might be across the LAN on the server or another workstation. DCOM thus provides location transparency, which simplifies developing distributed applications. DCOM isn't a self-contained and relies heavily on RPC to carry its work.
You may notice that when you get error “RPC server unavailable” , DCOM on one of the machines is unavailable. Fixing DCOM may Fix the RPC issue
DCOM is designed for use across multiple network transports, including Internet protocols such as HTTP. DCOM is based on the Open Software Foundation's DCE-RPC spec and will work with both Java language applets and ActiveX components through its use of the Component Object Model (COM).
Distributed Component Object Model extends the Component Object Model (COM) to support communication among objects on different computers—on a local area network (LAN), a wide area network (WAN), or even the Internet. With DCOM, your application can be distributed at locations that make the most sense to your customer and to the application.
Because DCOM is a seamless evolution of COM, you can take advantage of your existing investment in COM-based applications, components, tools, and knowledge to move into the world of standards-based distributed computing. As you do so, DCOM handles low-level details of network protocols so you can focus on your real business.
The benefits of DCOM:
- Code Sharing and Reuse
- Object Oriented Programming
- Programming language-independent (C++, VB, Java, etc)
- Prevents DLL mismatches
- COM as a Binary Standard
- Glue between interoperable components
- Interfaces (collection of functions)
- In Process (DLLs)
- Remote (DCOM)
· Communications between components, even across process and network boundaries
· Dynamic loading of components
COM is used by developers to create re-usable software components, link components together to build applications, and take advantage of Windows services. The family of COM technologies includes COM+, Distributed COM (DCOM) and ActiveX Controls.
COM is used in applications such as the Microsoft Office , e.g. COM OLE technology allows Word documents to dynamically link to data in Excel spreadsheets and COM Automation allows users to build scripts in their applications to perform repetitive tasks or control one application from another.
Microsoft provides COM interfaces for many Windows application services such as Microsoft Message Queuing (MSMQ) Microsoft Active Directory (AD) and Windows Management and Instrumentation (WMI).
What is COM+?
COM+ is the name of the COM-based services and technologies first released in Windows 2000. COM+ brought together the technology of COM components and the application host of Microsoft Transaction Server (MTS). COM+ automatically handles difficult programming tasks such as resource pooling, disconnected applications, event publication and subscription and distributed transactions.