mensaje de WM_DDE_POKE
Una aplicación cliente de Intercambio de datos dinámicos (DDE) publica un mensaje de WM_DDE_POKE en una aplicación de servidor DDE. Un cliente usa este mensaje para solicitar al servidor que acepte un elemento de datos no solicitado. Se espera que el servidor responda con un mensaje WM_DDE_ACK que indica si aceptó el elemento de datos.
Para publicar este mensaje, llame a la función PostMessage con los parámetros siguientes.
#define WM_DDE_POKE 0x03E7
Parámetros
-
wParam
-
Identificador de la ventana del cliente que publica el mensaje.
-
lParam
-
La palabra de orden bajo es un identificador de un objeto de memoria global que contiene una estructura DDEPOKE con los datos e información adicional.
La palabra de orden superior contiene un átomo global que identifica el elemento de datos para el que se envían los datos o la notificación.
Observaciones
Publicación
La aplicación cliente debe asignar memoria para el objeto de memoria global mediante la función GlobalAlloc . La aplicación cliente debe eliminar el objeto si se cumple alguna de las condiciones siguientes:
- La aplicación de servidor responde con un mensaje de WM_DDE_ACK negativo.
- El miembro fRelease es FALSE, pero la aplicación de servidor responde con un WM_DDE_ACK positivo o negativo.
La aplicación cliente debe crear el átomo mediante la función GlobalAddAtom .
La aplicación cliente debe crear o reutilizar el parámetro WM_DDE_POKElParam llamando a la función PackDDElParam o a la función ReuseDDElParam .
Recepción
La aplicación de servidor debe publicar el mensaje de WM_DDE_ACK para responder positiva o negativamente. Al publicar WM_DDE_ACK, el servidor puede reutilizar el átomo, o bien puede eliminarlo y crear uno nuevo.
El servidor debe crear o reutilizar el parámetro WM_DDE_ACKlParam llamando a la función PackDDElParam o a la función ReuseDDElParam .
Para liberar el objeto de memoria global, el servidor debe llamar a la función GlobalFree . Además, si el formato de datos es CF_DSPMETAFILEPICT o CF_METAFILEPICT, el servidor también debe llamar a DeleteMetaFile con el identificador de metarchivo incrustado. Estos dos formatos tienen un nivel adicional de direccionamiento indirecto; es decir, una aplicación debe bloquear el objeto para obtener un puntero a un identificador y, a continuación, bloquear ese identificador para obtener un puntero a una estructura METAFILEPICT y, por último, llamar a DeleteMetaFile con el identificador del miembro hMF de la estructura METAFILEPICT .
Para liberar el objeto, el servidor debe llamar a la función FreeDDElParam .
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible |
Windows 2000 Professional [solo aplicaciones de escritorio] |
Servidor mínimo compatible |
Windows 2000 Server [solo aplicaciones de escritorio] |
Encabezado |
|