The DdeCallbackProc function is an application-defined callback function used with the Dynamic Data Exchange Management Library (DDEML) functions. It processes dynamic data exchange (DDE) transactions. The PFNCALLBACK type defines a pointer to this callback function. DdeCallback is a placeholder for the application-defined function name.
HDDEDATA CALLBACK DdeCallback(
UINT uType, // transaction type
UINT uFmt, // clipboard data format
HCONV hconv, // handle to the conversation
HSZ hsz1, // handle to a string
HSZ hsz2, // handle to a string
HDDEDATA hdata, // handle to a global memory object
DWORD dwData1, // transaction-specific data
DWORD dwData2 // transaction-specific data
);
Class | Meaning |
---|---|
XCLASS_BOOL | A DDE callback function should return TRUE or FALSE when it finishes processing a transaction that belongs to this class. The XCLASS_BOOL transaction class consists of the following types: |
XTYP_ADVSTART XTYP_CONNECT |
|
XCLASS_DATA | A DDE callback function should return a DDE handle, the CBR_BLOCK return code, or NULL when it finishes processing a transaction that belongs to this class. The XCLASS_DATA transaction class consists of the following types: |
XTYP_ADVREQ XTYP_REQUEST XTYP_WILDCONNECT |
|
XCLASS_FLAGS | A DDE callback function should return DDE_FACK, DDE_FBUSY, or DDE_FNOTPROCESSED when it finishes processing a transaction that belongs to this class. The XCLASS_FLAGS transaction class consists of the following types: |
XTYP_ADVDATA XTYP_EXECUTE XTYP_POKE |
|
XCLASS_NOTIFICATION | The transaction types that belong to this class are for notification purposes only. The return value from the callback function is ignored. The XCLASS_NOTIFICATION transaction class consists of the following types:
XTYP_ADVSTOP |
The return value depends on the transaction class. For more information about the return values, see descriptions of the individual transaction types.
The callback function is called asynchronously for transactions that do not involve the creation or termination of conversations. An application that does not frequently accept incoming messages will have reduced DDE performance because the DDEML uses messages to initiate transactions.
An application must register the callback function by specifying a pointer to the function in a call to the DdeInitialize function.
Windows NT: Requires version 3.1 or later.
Windows: Requires Windows 95 or later.
Windows CE: Unsupported.
Header: Declared in ddeml.h.
Import Library: User-defined.
Dynamic Data Exchange Management Library Overview, Dynamic Data Exchange Management Functions, DdeEnableCallback, DdeInitialize