Hi, I need a simple implementation of a DDE Client and Server. But without using the Dellphi VCL Components (TDDEClientConv and TDDEServerConv). Here is a skeleton of the class I imagine: That is only a proposal, you can adjust it if needed. TDDEMode = (dmClient, dmServer); // describes how to connect, either as Server or as Client. Might be posible to start it as a DDE Monitor as well TOnDDEMessage = procedure(sender : Tobject; const aTopic, aMessage: string) of object; TSimpleDDE = class public Function Connect(const aService, aTopic: string; Mode: TDDEMode): Boolean procedure Disconnect; Function ExecuteMakro(const aMakro: string): boolean; Function PokeData(const aTopic, aMessage : string): Boolean; property Connected : Boolean; property LastError: string; property TimeOut : dword; Property OnMessage: TOnDDEMessage; end; I need also 2 applications, one working as the client and one working as the server. They will just be demos, to show the functionality of the above class. They should have a TMemo, in which all activity should be logged (connection, disconnection etz). and 2 edits, they should send their context to the other application so the both will be synchronized. I suppose that would be best done in the OnExit Event of the TEdit, no need to play with OnChange.