Two applications participating in Dynamic Data Exchange are said to be engaged in a DDEconversation. The application that initiates the conversation is the DDE Client, and the application that responds to the DDE Client is the DDE server.
An application can have several DDE conversationsrunning at the same time. The application can be the DDE Client in some conversations (requesting data or services), and the DDE server (the data/service provider) in others. Each request or response in a DDE conversationspecifies the data or service to be sent or received.
Note: A DDE conversation is sometimes referred to as a channel or a link.
The syntax sent by the DDE Client when it tries to establish a DDE conversation with the DDE server, consists of three parts:
These are combined in the format:
<DDE server application name>|<DDE Topic name>!<DDE Data item name>
Note: In the DDE Client syntax structure example above, every placeholder shown inside arrow brackets ( <placeholder> ) has to be replaced with the actual name of the item that it describes. Do not include the arrow brackets and the placeholder words they contain in the statement, and are shown here only for your information.
As the DDE protocol was designed in an era before long file names, DDE only supports the use of short (8 character) file names. To overcome this limitation, enclose the three parts of the DDE syntax within single quotes respectively. For example:
Citect|Variable!'Process Variable 1'
This instructs DDE to treat the characters within the quotes as strings, thus permitting them to contain long file names, the space character (), the pipe character (|), the exclamation or bang character (!), or any other non alphanumeric character.