XTYP_ADVREQ

3.1

#include <ddeml.h>

XTYP_ADVREQ
hszTopic = hsz1;           /* handle of topic-name string     */
hszItem = hsz2;            /* handle of item-name string      */
cAdvReq = LOWORD(dwData1); /* count of remaining transactions */

The system sends this transaction to a server after the server calls the DdePostAdvise function. This transaction informs the server that an advise transaction is outstanding on the specified topic/item name pair and that data corresponding to the topic/item name pair has changed.

Parameters

hszTopic

Value of hsz1. Identifies the topic name.

hszItem

Value of hsz2. Identifies the item name that has changed.

cAdvReq

Value of the low-order word of dwData1. Specifies the count of XTYP_ADVREQ transactions that remain to be processed on the same topic/item/format name set, within the context of the current call to the DdePostAdvise function. If the current XTYP_ADVREQ transaction is the last one, the count is zero. A server can use this count to determine whether to create an HDATA_APPOWNED data handle for the advise data.

If the DDEML issued the XTYP_ADVREQ transaction because of a late-arriving DDE_FACK transaction flag from a client, the low-order word is set to CADV_LATEACK. The DDE_FACK transaction flag arrives late when a server is sending information faster than a client can process it.

Return Value

The server should call the DdeCreateDataHandle function to create a data handle that identifies the changed data and then should return the handle. If the server is unable to complete the transaction, it should return NULL.

Comments

A server cannot block this transaction type; the CBR_BLOCK return value is ignored.

See Also

DdeCreateDataHandle, DdeInitialize, DdePostAdvise