回调函数

【勇芳软件工作室】汉化HomePreviousNext

使用DDEML的应用程序必须提供一个回调函数来处理影响应用程序的DDE事件。DDEML通过向应用程序的DDE回调函数发送事务来向应用程序通知这些事件。回调函数接收的事务取决于哪个回调过滤器标记DdeInitialize中指定的应用程序,以及应用程序是客户端还是服务器,还是两者。有关详细信息,请参阅DdeCallback.

以下示例显示了典型客户端应用程序的回调函数的一般结构。

HDDEDATA CALLBACK DdeCallback(uType,uFmt,hconv,hsz1,

hsz2,-ruleHData,dwData1,dwData2)

UINT uType; /* transaction type */

UINT uFmt; /* clipboard data format */

HCONV hconv; /* handle of conversation */

HSZ hsz1; /* handle of string */

HSZ hsz2; /* handle of string */

HDDEDATA hdata; /* handle of global memory object */

DWORD dwData1; /* transaction-specific data */

DWORD dwData2; /* transaction-specific data */

{

switch(uType){

case XTYP_REGISTER:

case XTYP_UNREGISTER:

.

.

.

return (HDDEDATA) NULL;

case XTYP_ADVDATA:

.

.

.

return (HDDEDATA) DDE_FACK;

case XTYP_XACT_COMPLETE:

.

.

.

return (HDDEDATA) NULL;

case XTYP_DISCONNECT:

.

.

.

return (HDDEDATA) NULL;

默认:

return (HDDEDATA) NULL;

}

}

【UTYPE】参数指定DDEML发送给回调函数的事务类型。剩余参数的值取决于事务类型。以下主题将描述生成它们的事务类型和事件。有关每种交易类型的详细信息,请参阅交易管理.