DDE (Funciones)

Intercambian datos entre Visual FoxPro y otras aplicaciones basadas en Microsoft Windows.

Observaciones

Visual FoxPro puede actuar como servidor o como cliente para enviar y recibir datos a y desde otras aplicaciones basadas en Microsoft Windows.

Las aplicaciones que admiten DDE (intercambio dinámico de datos) utilizan las siguientes convenciones de nombres.

Nombre Descripción
Nombre del servicio Un nombre al que responde el servidor cuando un cliente intenta tener acceso al servidor. Un servidor puede admitir muchos nombres de servicio.
Nombre del tema Un nombre que especifica un conjunto lógico de datos. Para aplicaciones basadas en archivos, los nombres de tema son normalmente nombres de archivo. En otras aplicaciones, los nombres de tema son específicos de la aplicación. Para tener acceso al servidor, el cliente debe especificar un nombre de tema además del nombre de servicio del servidor.
Nombre de elemento Un nombre que especifica una unidad de datos que el servidor puede transferir al cliente que pide los datos.

Para pedir datos de otra aplicación, cree un programa de Visual FoxPro que establezca Visual FoxPro como cliente. A continuación se ofrece una breve orientación acerca de la creación de un programa sencillo de Visual FoxPro que pide datos de otra aplicación:

  • Establezca un vínculo con la aplicación de servidor mediante DDEInitiate( ).
  • Si el vínculo se establece con éxito, utilice DDERequest( ) para pedir datos de la aplicación de servidor. DDERequest( ) puede ejecutarse de forma repetitiva para pedir datos adicionales.
  • Una vez recibidos los datos, ejecute DDETerminate( ) para terminar el vínculo con la aplicación de servidor y liberar recursos del sistema.

Las funciones anteriores establecen un vínculo frío. Un vínculo frío se produce cuando el cliente inicia todas las comunicaciones entre las aplicaciones. Para ver una descripción de otros tipos de vínculos, vea DDEAdvise( ).

A continuación se ofrece una breve orientación para un programa que establece Visual FoxPro como servidor:

  • Utilice DDESetService( ) para crear un servicio y especificar el tipo de servicio.
  • Utilice DDESetTopic( ) para crear un tema de servicio y especificar el procedimiento que se ejecutará cuando se especifique el tema en una petición de cliente.
  • Cree el procedimiento especificado en DDESetTopic( ) para aceptar los parámetros transferidos al procedimiento.
  • Dentro del procedimiento, procese la petición y, si corresponde, devuelva los datos pedidos al cliente.

Observe que estas funciones DDE se diferencian de las convenciones de las funciones previas de Visual FoxPro en los aspectos siguientes:

  • Los cuatro primeros caracteres de estas funciones no son únicos.
  • Los nombres de función exceden de diez caracteres y no pueden abreviarse.
    Función DDE Descripción
    DDEAbortTrans( ) Termina una transacción DDE asíncrona.
    DDEAdvise( ) Crea un vínculo de notificación o un vínculo automático utilizado en DDE.
    DDEEnabled( ) Activa o desactiva el proceso DDE o devuelve el estado del proceso DDE.
    DDEExecute( ) Mediante DDE, envía un comando a otra aplicación.
    DDEInitiate( ) Establece un canal DDE entre Visual FoxPro y otras aplicaciones basadas en Microsoft Windows.
    DDELastError( ) Devuelve un número de error para la última función DDE.
    DDEPoke( ) Envía datos entre las aplicaciones cliente y servidor en una conversación DDE.
    DDERequest( ) Pide datos a la aplicación de servidor en una conversación dinámica DDE.
    DDESetOption( ) Cambia o devuelve la configuración DDE.
    DDESetService( ) Crea, libera o modifica los nombres de servicio y la configuración de Visual FoxPro.
    DDESetTopic( ) En una conversación DDE, crea o libera un nombre de tema de un nombre de servicio.
    DDETerminate( ) Cierra un canal DDE establecido mediante DDEInitiate( ).

Vea también

DDEAbortTrans( ) | DDEAdvise( ) | DDEEnabled( ) | DDEExecute( ) | DDEInitiate( ) | DDELastError( ) | DDEPoke( ) | DDERequest( ) | DDESetOption( ) | DDESetService( ) | DDESetTopic( ) | DDETerminate( )