Dynamic Date Exchange (DDE) es un protocolo informático de Microsoft® basado en mensajes que permite intercambiar datos entre aplicaciones que se ejecutan en sistemas operativos Windows. Conocida más generalmente como comunicación entre procesos, Dynamic Data Exchange difunde mensajes para establecer una «conversación» y un canal de comunicaciones entre la aplicación que solicita datos, el cliente y la aplicación donde residen los datos, es decir, el servidor. Escrita e iniciada por la aplicación cliente, una solicitud DDE consta del nombre de la aplicación DDE del servidor, la naturaleza de los datos que se intercambiarán, denominados tema DDE y el nombre del elemento DDE. Los enlaces DDE pueden ejecutarse una vez o actualizarse dinámicamente, en cuyo caso se notifica a la aplicación receptora cada vez que cambia el valor de los datos especificados en la aplicación del servidor. Se pueden establecer múltiples enlaces DDE desde cualquier aplicación y una aplicación puede actuar como cliente y servidor al mismo tiempo.
Dynamic Data Exchange funciona transmitiendo mensajes que contienen la solicitud DDE a todas las demás aplicaciones en ejecución. Si una aplicación en ejecución reconoce la solicitud DDE, responde y se establece una conversación. A continuación, el sistema operativo Windows establece un vínculo entre las dos aplicaciones. Los canales de comunicación pueden ser de una sola vez o permanentes en los casos en que la aplicación cliente necesite tener datos actualizados de forma regular. Hay dos tipos de enlaces permanentes: cálidos y calientes. Los enlaces cálidos primero solicitan la aprobación del usuario para actualizar la aplicación cliente. Con los enlaces activos, esto se hace automáticamente.
Las comunicaciones de datos DDE tienen lugar detrás de escena, es decir, el usuario puede seguir haciendo lo que esté haciendo mientras la solicitud DDE se ejecuta en segundo plano. Como tal, se dice que la comunicación de intercambio dinámico de datos es asincrónica. La solicitud DDE y su resultado pueden almacenarse en la memoria compartida mientras que las aplicaciones cliente y servidor continúan lo que estén procesando hasta que se pueda actuar sobre la solicitud y la respuesta.
Este protocolo ha sido reemplazado hasta cierto punto por la vinculación e incrustación de objetos (OLE) de Microsoft® y el modelo de objetos componentes (COM), así como por la biblioteca de administración de intercambio dinámico de datos (DDEML). Sin embargo, DDE todavía se usa ampliamente para ciertos propósitos, especialmente aquellos que no requieren la interacción continua del usuario. Los ejemplos incluyen la actualización de una hoja de cálculo de Microsoft® Excel de un cliente desde aplicaciones de servidor que reciben datos en tiempo real de sensores u otros dispositivos de medición en una línea de producción, vinculación a aplicaciones que reciben acciones en tiempo real y otras actualizaciones del mercado financiero, o la actualización regular de una hoja de cálculo con valores de una base de datos.