A client can issue an execute transaction across a conversation, or in the case of an automatically established conversation, to a recognized server. There is no need to specify a topic, as an execute transaction instructs the server application to execute a command.
The command and its arguments are issued to the server in the form of a string in a standard format (see Execute transactions). LispWorks provides two ways of issuing an execute transaction, namely dde-execute-string and dde-execute-command (and the corresponding
*
functions that automatically manage conversations).
The following example shows how dde-execute-string* can issue a command to a server designated by
:excel
on the topic
:system
, in order to open a file called
foo.xls
:
(dde-execute-string* :excel :system "[open(\"foo.xls\")]")
The function dde-execute-command takes the command to issue, and its arguments, and marshals these into an appropriate string for you. The following example shows how dde-execute-command* can issue the same command as in the previous example:
(dde-execute-command* :excel :system `open `("foo.xls"))