The (autoload) library(dde)
defines primitives to
realise simple DDE server applications in SWI-Prolog. These features are
provided as of version 2.0.6 and should be regarded prototypes. The
C-part of the DDE server can handle some more primitives, so if you need
features not provided by this interface, please study library(dde)
.
+Service(+Topic, +Item, +Value)Service is the name of the DDE service provided (like progman in the client example above). Topic is either an atom, indicating Goal only handles requests on this topic or a variable that also appears in Goal. Item and Value are variables that also appear in Goal.
The example below registers the Prolog feature/2 predicate to be accessible from other applications. The request may be given from the same Prolog as well as from another application.
Handling DDE execute
requests is very similar. In this
case the template is of the form:
+Service(+Topic, +Item)
Passing a Value argument is not needed as execute requests either succeed or fail. If Goal fails, a `not processed' is passed back to the caller of the DDE request.