终止数据链接

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

如果客户端请求终止特定数据链路,则客户端向服务器发送WM_DDE_UNADVISE消息,如以下示例所示。

if ((atomItem = GlobalAddAtom(szItemName)) != 0) {

if(!PostMessage(hwndServerDDE,

WM_DDE_UNADVISE,

(WPARAM)hwndClientDDE,

PackDDElParam(WM_DDE_UNADVISE,0,atomItem))){

GlobalDeleteAtom(atomItem);

FreeDDElParam(WM_DDE_UNADVISE, lParam);

}

}

if (atomItem == 0) {

.

./ *错误处理* /

.

}

服务器检查客户端当前是否具有到此会话中特定项目的链接。如果存在链接,则服务器向客户端发送肯定的WM_DDE_ACK消息;然后不再需要服务器来发送关于该项目的更新。如果没有链接,则服务器将客户端发送一个消息WM_DDE_ACK消息。

WM_DDE_UNADVISE消息指定数据格式。格式为零,即使建立了几个热链接,并且每个使用不同的格式,服务器都会停止指定项目的所有链接。

要终止对话的所有链接,客户端应用程序向服务器发送一个带有零项目原子的WM_DDE_UNADVISE消息。服务器确定会话是否至少有一个当前建立的链接。如果存在链接,则服务器向客户端发送一个正的WM_DDE_ACK消息;服务器就不再需要在对话中发送任何更新。如果没有链接,则服务器将客户端发送一个消息WM_DDE_ACK消息。