DDE Dynamic Data Exchange

The first step on the road to ActiveX was Dynamic Data Exchange (DDE). This capability is still supported by some applications and by Visual Basic, but only for backward compatibility with older applications. Few new applications support DDE to any substantial degree.

DDE was a first step in allowing applications to communicate with each other. This took two forms: data and commands. Applications could send or receive data to and from other applications. Data was identified by the application name and by individual topic and item names within that application. It was also possible to create hot links, so that one application could notify another when information changed.

Applications could also execute commands in another application. For example: if application MyWordProcessor had a macro command called OpenFile implemented via DDE, it would be possible to send an OpenFile execute command through DDE so that the word processor would open a specified file.

DDE was fairly limited, difficult to implement correctly, notoriously slow, and unreliable. It was also a rather application-centric approach to sharing data. It allowed applications to share data but did not allow documents to share data beyond those mechanisms built into the application.

So now that you know a little bit about DDE, feel free to forget most of what you've just read. DDE was a great step, but with one exception it ultimately turned out to be a step in the wrong direction. That exception is its ability to execute commands in other applications, a technology that was the ascendant of today's ActiveX automation.