Biblioteca de administración dinámica de Intercambio de datos

El intercambio dinámico de datos (DDE) es una forma de comunicación entre procesos que usa memoria compartida para intercambiar datos entre aplicaciones. Las aplicaciones pueden usar DDE para transferencias de datos únicas y para intercambios continuos y actualización de datos.

En esta sección

Nombre Descripción
Acerca de DDEML Describe el intercambio dinámico de datos.
Conceptos básicos Describe los conceptos clave relativos al intercambio de datos dinámicos.
Administración de conversaciones Describe las conversaciones entre un cliente y un servidor.
Administración de datos Describe cómo los objetos de memoria pasan datos de una aplicación a otra.
Supervisión de aplicaciones Describe cómo se pueden usar los elementos de la biblioteca de administración de Intercambio de datos dinámicos para crear una aplicación que supervisa la actividad dinámica de intercambio de datos en el sistema.
Servicio de nombres Describe cómo la biblioteca de administración dinámica de Exchange de datos permite que una aplicación de servidor registre los nombres de servicio que admite.
Administración de transacciones Describe cómo un cliente puede enviar transacciones para obtener datos y servicios del servidor.
Referencia de DDEML Contiene la referencia de API.

Funciones DDEML

Nombre Descripción
DdeAbandonTransaction Abandona la transacción asincrónica especificada y libera todos los recursos asociados a la transacción.
DdeAccessData Proporciona acceso a los datos del objeto DDE especificado. Una aplicación debe llamar a la función DdeUnaccessData cuando haya terminado de acceder a los datos del objeto.
DdeAddData Agrega datos al objeto DDE especificado. Una aplicación puede agregar datos a partir de cualquier desplazamiento desde el principio del objeto. Si los datos nuevos ya se superponen en el objeto, los nuevos datos sobrescriben los datos antiguos en los bytes en los que se produce la superposición. El contenido de las ubicaciones del objeto en el que no se ha escrito no está definido.
DdeCallback Una función de devolución de llamada definida por la aplicación que se usa con las funciones de la Biblioteca de administración de Exchange de datos dinámicos (DDEML). Procesa transacciones DDE. El tipo PFNCALLBACK define un puntero a esta función de devolución de llamada. DdeCallback es un marcador de posición para el nombre de función definido por la aplicación.
DdeClientTransaction Inicia una transacción de datos entre un cliente y un servidor. Solo una aplicación cliente DDE puede llamar a esta función y la aplicación solo puede usarla después de establecer una conversación con el servidor.
DdeCmpStringHandles Compara los valores de dos identificadores de cadena. El valor de un identificador de cadena no está relacionado con el caso de la cadena asociada.
DdeConnect Establece una conversación con una aplicación de servidor que admite el nombre de servicio y el par de nombres de tema especificados. Si existe más de un servidor de este tipo, el sistema solo selecciona uno.
DdeConnectList Establece una conversación con todas las aplicaciones de servidor que admiten el nombre de servicio y el par de nombres de tema especificados. Una aplicación también puede usar esta función para obtener una lista de identificadores de conversación pasando la función un identificador de conversación existente.
DdeCreateDataHandle Crea un objeto DDE y rellena el objeto con datos del búfer especificado. Una aplicación DDE usa esta función durante las transacciones que implican pasar datos a la aplicación asociada.
DdeCreateStringHandle Crea un identificador que identifica la cadena especificada. Una aplicación de servidor o cliente DDE puede pasar el identificador de cadena como parámetro a otras funciones de la Biblioteca de administración dinámica de Exchange de datos (DDEML).
DdeDisconnect Finaliza una conversación iniciada por la función DdeConnect o DdeConnectList y invalida el identificador de conversación especificado.
DdeDisconnectList Destruye la lista de conversaciones especificada y finaliza todas las conversaciones asociadas a la lista.
DdeEnableCallback Habilita o deshabilita las transacciones de una conversación específica o para todas las conversaciones establecidas actualmente por la aplicación que realiza la llamada.
DdeFreeDataHandle Cobra un objeto DDE y elimina el identificador de datos asociado al objeto .
DdeFreeStringHandle Libera un identificador de cadena en la aplicación que realiza la llamada.
DdeGetData Copia datos del objeto DDE especificado en el búfer local especificado.
DdeGetLastError Recupera el código de error más reciente establecido por el error de una función DDEML y restablece el código de error en DMLERR_NO_ERROR.
DdeImpersonateClient Suplanta una aplicación cliente DDE en una conversación de cliente DDE.
DdeInitialize Registra una aplicación con la Biblioteca de administración dinámica de Intercambio de datos (DDEML). Una aplicación debe llamar a esta función antes de llamar a cualquier otra función DDEML.
DdeKeepStringHandle Incrementa el recuento de uso asociado al identificador especificado. Esta función permite a una aplicación guardar un identificador de cadena pasado a la función de devolución de llamada DDE de la aplicación. De lo contrario, se elimina un identificador de cadena pasado a la función de devolución de llamada cuando la función de devolución de llamada devuelve. Esta función también se debe usar para mantener una copia de un identificador de cadena al que hace referencia la estructura CONVINFO devuelta por la función DdeQueryConvInfo .
DdeNameService Registra o anula el registro de los nombres de servicio que admite un servidor DDE. Esta función hace que el sistema envíe XTYP_REGISTER o XTYP_UNREGISTER transacciones a otras aplicaciones cliente de la Biblioteca de administración dinámica de Exchange de datos (DDEML).
DdePostAdvise Envía una transacción XTYP_ADVREQ a la función de devolución de llamada DDE de la aplicación que realiza la llamada (servidor) para cada cliente con un bucle de aviso activo en el tema y el elemento especificados. Una aplicación de servidor debe llamar a esta función cada vez que cambian los datos asociados al nombre del tema o al par de nombres de elemento.
DdeQueryConvInfo Recupera información sobre una transacción DDE y sobre la conversación en la que tiene lugar la transacción.
DdeQueryNextServer Recupera el siguiente identificador de conversación en la lista de conversaciones especificada.
DdeQueryString Copia el texto asociado a un identificador de cadena en un búfer.
DdeReconnect Habilita una aplicación de la Biblioteca de administración dinámica de intercambio de datos (DDEML) de cliente para intentar restablecer una conversación con un servicio que ha terminado una conversación con el cliente. Cuando se restablece la conversación, el DDEML intenta restablecer los bucles de aviso preexistentes.
DdeSetUserHandle Asocia un valor definido por la aplicación a un identificador de conversación o a un identificador de transacción. Esto es útil para simplificar el procesamiento de transacciones asincrónicas. Una aplicación puede usar la función DdeQueryConvInfo para recuperar este valor.
DdeUnaccessData Anula el acceso a un objeto DDE. Una aplicación debe llamar a esta función una vez que haya terminado de acceder al objeto .
DdeUninitialize Libera todos los recursos DDEML asociados a la aplicación que llama.

Transacciones DDEML

Nombre Descripción
XTYP_ADVDATA Informa al cliente de que el valor del elemento de datos ha cambiado. La función de devolución de llamada del cliente DDE, DdeCallback, recibe esta transacción después de establecer un bucle de aviso con un servidor.
XTYP_ADVREQ Informa al servidor de que una transacción de aviso está pendiente en el par de nombre de tema y nombre de elemento especificado y que los datos correspondientes al nombre del tema y al par nombre de elemento han cambiado. El sistema envía esta transacción a la función de devolución de llamada DDE, DdeCallback, después de que el servidor llame a la función DdePostAdvise .
XTYP_ADVSTART Un cliente usa la transacción XTYP_ADVSTART para establecer un bucle de asesoramiento con un servidor. Una función de devolución de llamada del servidor DDE, DdeCallback, recibe esta transacción cuando un cliente especifica XTYP_ADVSTART como el parámetro wType de la función DdeClientTransaction .
XTYP_ADVSTOP Un cliente usa la transacción de XTYP_ADVSTOP para finalizar un bucle de aviso con un servidor. Una función de devolución de llamada del servidor DDE, DdeCallback, recibe esta transacción cuando un cliente especifica XTYP_ADVSTOP en la función DdeClientTransaction .
XTYP_CONNECT Un cliente usa la transacción XTYP_CONNECT para establecer una conversación. Una función de devolución de llamada del servidor DDE, DdeCallback, recibe esta transacción cuando un cliente especifica un nombre de servicio que el servidor admite (y un nombre de tema que no es NULL) en una llamada a la función DdeConnect .
XTYP_CONNECT_CONFIRM Una función de devolución de llamada del servidor DDE, DdeCallback, recibe la transacción XTYP_CONNECT_CONFIRM para confirmar que se ha establecido una conversación con un cliente y proporcionar al servidor el identificador de conversación. El sistema envía esta transacción como resultado de una transacción de XTYP_CONNECT o XTYP_WILDCONNECT anterior.
XTYP_DISCONNECT La función de devolución de llamada DDE de una aplicación, DdeCallback, recibe la transacción XTYP_DISCONNECT cuando el asociado de la aplicación en una conversación usa la función DdeDisconnect para finalizar la conversación.
XTYP_ERROR Una función de devolución de llamada DDE, DdeCallback, recibe la transacción XTYP_ERROR cuando se produce un error crítico.
XTYP_EXECUTE Un cliente usa la transacción XTYP_EXECUTE para enviar una cadena de comandos al servidor. Una función de devolución de llamada del servidor DDE, DdeCallback, recibe esta transacción cuando un cliente especifica XTYP_EXECUTE en la función DdeClientTransaction .
XTYP_MONITOR La función de devolución de llamada DDE de un depurador DDE, DdeCallback, recibe la transacción XTYP_MONITOR cada vez que se produce un evento DDE en el sistema. Para recibir esta transacción, una aplicación debe especificar el valor APPCLASS_MONITOR cuando llama a la función DdeInitialize .
XTYP_POKE Un cliente usa la transacción XTYP_POKE para enviar datos no solicitados al servidor. Una función de devolución de llamada del servidor DDE, DdeCallback, recibe esta transacción cuando un cliente especifica XTYP_POKE en la función DdeClientTransaction .
XTYP_REGISTER Una función de devolución de llamada DDE, DdeCallback, recibe el tipo de transacción XTYP_REGISTER cada vez que una aplicación de servidor DDEML usa la función DdeNameService para registrar un nombre de servicio o cada vez que se inicia una aplicación que no sea DDEML que admita el tema Del sistema.
XTYP_REQUEST Un cliente usa la transacción de XTYP_REQUEST para solicitar datos de un servidor. Una función de devolución de llamada del servidor DDE, DdeCallback, recibe esta transacción cuando un cliente especifica XTYP_REQUEST en la función DdeClientTransaction .
XTYP_UNREGISTER Una función de devolución de llamada DDE, DdeCallback, recibe la transacción XTYP_UNREGISTER cada vez que una aplicación de servidor DDEML usa la función DdeNameService para anular el registro de un nombre de servicio o cada vez que finaliza una aplicación que no es DDEML que admite el tema Del sistema.
XTYP_WILDCONNECT La transacción de XTYP_WILDCONNECT permite a un cliente establecer una conversación en cada uno de los pares nombre de servicio y nombre de tema del servidor que coinciden con el nombre de servicio y el nombre del tema especificados. Una función de devolución de llamada del servidor DDE, DdeCallback, recibe esta transacción cuando un cliente especifica un nombre de servicio NULL , un nombre de tema NULL o ambos en una llamada a la función DdeConnect o DdeConnectList .
XTYP_XACT_COMPLETE Una función de devolución de llamada de cliente DDE, DdeCallback, recibe la transacción XTYP_XACT_COMPLETE cuando se ha completado una transacción asincrónica iniciada por una llamada a la función DdeClientTransaction .

Estructuras DDEML

Nombre Descripción
CONVCONTEXT Contiene información proporcionada por una aplicación cliente DDE. La información es útil para conversaciones DDE especializadas o entre idiomas.
CONVINFO Contiene información sobre una conversación DDE.
DDEML_MSG_HOOK_DATA Contiene información sobre un mensaje DDE y proporciona acceso de lectura a los datos a los que hace referencia el mensaje. Esta estructura está pensada para que la use una aplicación de supervisión DDEML.
MONCBSTRUCT Contiene información sobre la transacción DDE actual. Una aplicación de depuración DDE puede usar esta estructura al supervisar las transacciones que el sistema pasa a las funciones de devolución de llamada DDE de otras aplicaciones.
MONCONVSTRUCT Contiene información sobre una conversación DDE. Una aplicación de supervisión de DDE puede usar esta estructura para obtener información sobre una conversación que se ha establecido o finalizado.
MONERRSTRUCT Contiene información sobre el error DDE actual. Una aplicación de supervisión DDE puede usar esta estructura para supervisar los errores devueltos por las funciones de la biblioteca de administración de DDE.
MONHSZSTRUCT Contiene información sobre un identificador de cadena DDE. Una aplicación de supervisión DDE puede usar esta estructura al supervisar la actividad del componente de administrador de cadenas de la biblioteca de administración de DDE.
MONLINKSTRUCT Contiene información sobre un bucle de aviso de DDE. Una aplicación de supervisión de DDE puede usar esta estructura para obtener información sobre un bucle de asesoramiento que se ha iniciado o finalizado.
MONMSGSTRUCT Contiene información sobre un mensaje DDE. Una aplicación de supervisión DDE puede usar esta estructura para obtener información sobre un mensaje DDE enviado o publicado.