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.