Choosing both the OLE Libraries and the DDEML

ID: Q74804

The information in this article applies to:

Only in rare cases should an application need to use both the Object Linking and Embedding (OLE) libraries and the Dynamic Data Exchange Management Library (DDEML). Generally, these are cases where an application needs OLE to support persistent embedding and linking of objects and the other features uniquely offered by OLE, but where the application also needs DDE to support many simultaneous links for items that are updated very frequently.

There are no complications when both the OLE libraries and the DDEML are used simultaneously in a client application. Simply use the OLE libraries to initiate conversations with OLE servers; and use the DDEML to initiate conversations with DDE servers.

However, there is one complication when using both the OLE libraries and the DDEML in a server application. Different service names (DDE "application" names) must be used for OLE and DDE conversations. For example, "myapp" might be assigned as the service name for DDE conversations, while "myappOLE" might be assigned as the service name for OLE conversations. This is required because the OLE libraries and the DDEML have no other way to distinguish which one should respond on behalf of the registered server when an initiation request is received.

It probably makes more sense to modify the service name for OLE conversations than to modify the service name for DDE conversations. The SHELL.DLL registration services hide the service name for the OLE conversations from other applications and end-users. On the contrary, other applications and end-users must have knowledge of the service name for the DDE conversation.

Additional reference words: 3.10 1.00 OLE DDEML KBCategory: kbole kbprg KBSubcategory: LeoneCliMisc LeoneSvrMisc

Last Reviewed: February 17, 1995