DCOM Explained
by Rosemary Rock-Evans
Digital Press
ISBN: 1555582168   Pub Date: 09/01/98

Previous Table of Contents Next


Their Web site for more details about the Software AG ports, particularly the timescales for the ports, can be found on http://www.sagus.com. This Web site also contains downloadable versions of DCOM for the ports available in beta.

Hewlett Packard-is intending to port DCOM to HP-UX. The announcement was made in May 1997, when Hewlett Packard announced their intent to provide COM technology, including DCOM features, on HP-UX “within the year.” A summary of the planned platform support is shown below in the table.

One important aspect worthy of special mention is that the other ports of DCOM on the platforms shown generally work only with Windows NT, not Windows95. This means that the developer needs a three-tier architecture to use DCOM, with Windows NT or 95 clients accessing a Windows NT server which can then, in turn, communicate with other platforms. In fact, this is the sort of architecture Microsoft is encouraging, with other platforms acting more as servers and the Windows NT platform acting as a sort of hub.

Table 11. 1 Platform support
Operating system DCOM Who
UNIX AIX Planned Software AG
HP-UX Planned HP, Software AG
Solaris   YES Software AG
SINIX Planned Software AG
Linux   YES Software AG
SCO UnixWare Planned Software AG
Digital Unix Planned Digital, Software AG
IRIX   YES Silicon Graphics
PC Windows95   YES Microsoft
Windows NT WS   YES Microsoft
Windows NT Svr   YES Microsoft
Macintosh   YES Microsoft
Propty Open MVS   YES Software AG
OS/400 Planned Software AG
OpenVMS Planned Digital, Software AG


Figure 11.2  Windows NT acts as a hub in three-tier architecture

Furthermore, the network protocol supported is TCP/IP to all platforms except MVS when Cedar is being used.

What Is Provided?

DCOM on other platforms is provided as a runtime environment and a Software Development Kit (SDK).

The runtime environment comes as a set of shared runtime libraries (DLLs or equivalent) used for supporting the applications at runtime together with a set of administration tools, such as a utility to enable servers (proxy and stub libraries) to be registered, and installation utilities. Be aware that the runtime takes up over 20MB of disk space.

The SDK consists of a set of tools, libraries, and examples which typically include:

  An MIDL compiler-which can be used to generate stubs and proxies. Sample files are often provided with the ports
  An ActiveX Template Library-a Unix implementation of the Microsoft ATL
  GUIDgen (the tool to generate GUIDs)
  UUIDgen-this looks up the registry to get the address of the network interface card in the way we described in the chapter on GUIDs
  header files-a set of header files for inclusion in source files for compilation
  make files-the makefile utility is provided as a Bourne shell script in Software AG’s Unix port, for example. The utility generates a C++ module that has to be compiled and linked with the shared libraries.
  mktyplib-the make type library utility

These are generally command line driven at the moment rather than being GUI-based tools. Clearly the actual tools provided depend on who is providing the port, but the principle is much the same.

We will be saying a little more about wrapping in this chapter, but Digital is also aiming to provide wrapping technology via third-party companies.

Concepts Supported

The table below shows the COM concepts which can be supported and how they are supported. This table thus shows what limitations there are from the developer’s point of view when building an application. In the next section we will show the functions available.

Table 11.2 Concept support
Concept Supported?
Component YES
Interface YES
Moniker YES (registering, stringification, binding file, and composite, etc.)
Automation YES (IDispatch and the type library)
Aggregation YES
MIDL YES


Previous Table of Contents Next