ID Number: Q74806
3.10
WINDOWS
Summary:
The functionality of the Dynamic Data Exchange Management Library
(DDEML) is largely encompassed by that of the Object Linking and
Embedding (OLE) libraries. However, there is some functionality that
the DDEML supports that the OLE libraries do not.
Multiple Items Per Conversation
-------------------------------
The DDEML supports multiple, simultaneous, item advise loops per
conversation. A single pair of window handles serves as the source and
destination for DDE messages that may create advise loops for any
number of items. In contrast, the OLE libraries support only one item
(object) per conversation. If a client wants to establish a link to
several items (objects) in a server document, it must establish
multiple conversations with the server, one for each item. Although
this is not difficult to program in the client application, it does
incur the memory and performance overhead of multiple DDE windows, as
opposed to a single DDE window.
It is possible to use the OLE libraries to simulate the multiple
items-per-conversation capability of the DDEML. The identification of
an item can be attached to all data packets for the item. However this
technique works only for clients and servers that agree upon a
particular convention for creating such data packets. This technique
is not be backward-compatible with existing DDE applications.
Generalized Support for the DDE "System" Topic
----------------------------------------------
The OLESVR library responds to requests for these standard DDE
"System" topic items: EditItems, protocols, topics, formats, and
status. (EditItems is a new standard DDE "System" topic item that
supports the OLE StdFileEditing command.) An application using OLESVR
to implement DDE has no opportunity to influence the response of
OLESVR to requests for these "System" topic items. Further, the
application has no opportunity to respond to requests for other
"System" topic items that it might define, or to requests for the
SysItems "System" topic item.
In contrast, the DDEML provides generalized support for any "System"
topic.