




 
with-dde-conversation ( conv service topic &key errorp new-conversation-p ) &body body => result
A conversation object.
A symbol or string.
A symbol or string.
A boolean.
A list of Lisp forms.
The macro 
with-dde-conversation
 dynamically binds a conversation with a server across the scope of a body of code specified by 
body
. The argument 
conv
 is bound to a conversation with the server specified by 
service
, and the topic specified by 
topic
. 
If 
server
 names a client service registered with 
define-dde-client
, the registered service name is used as the DDE service name. If 
server
 is any other symbol, the print name of the symbol is used as the DDE service name. If 
server
 is a string, that string is used as the DDE service name.
The topic argument specifies the DDE topic name to be used in the conversation. If it is a symbol, the symbol's print name is used. If it is a string, the string is used.
An existing conversation may be used, if available, unless new-conversation-p is true, in which case a new conversation is always created.
If a new conversation is created, it is disconnected after body has executed as an implicit program.
If a conversation cannot be established, the result returned by the function depends on the value of 
errorp
. If 
errorp
 is 
t
 (the default value), then LispWorks signals an error. If 
errorp
 is 
nil
, the body is not executed, and 
nil
 is returned.