WM_DDE_ACK訊息
WM_DDE_ACK訊息會通知動態資料 Exchange (DDE) 接收和處理下列訊息:在某些情況下,WM_DDE_POKE、WM_DDE_EXECUTE、WM_DDE_DATA、WM_DDE_ADVISE、WM_DDE_UNADVISE、WM_DDE_INITIATE或WM_DDE_REQUEST) (。
若要張貼此訊息,請使用下列參數呼叫 PostMessage 函式。
#define WM_DDE_ACK 0x03E4
參數
-
wParam
-
回應 WM_DDE_INITIATE時,此參數是傳送訊息之伺服器視窗的控制碼。
回應 WM_DDE_EXECUTE時,此參數是張貼訊息的伺服器視窗控制碼。
回復所有其他訊息時,此參數是張貼訊息之用戶端或伺服器視窗的控制碼。
-
lParam
-
回應 WM_DDE_INITIATE時,低序字會包含可識別回復應用程式的 Atom。 高階單字包含一個 Atom,可識別要建立交談的主題。
回應 WM_DDE_EXECUTE時,低序字會指定包含一系列旗標的 DDEACK 結構,指出回應的狀態。 高序字是全域記憶體物件的控制碼,其中包含在 WM_DDE_EXECUTE 訊息中收到的命令字串。
回復所有其他訊息時,低序字會指定包含一系列旗標的 DDEACK 結構,指出回應的狀態。 高序字包含全域 Atom,可識別傳送回應的資料項目名稱。
備註
張貼
除了回應WM_DDE_INITIATE訊息之外,應用程式會呼叫PostMessage函式來張貼WM_DDE_ACK訊息,而不是呼叫SendMessage函式。 回應WM_DDE_INITIATE時,應用程式會呼叫SendMessage來傳送WM_DDE_ACK訊息。 在此情況下,即使WM_DDE_INITIATE訊息指定Null atom) ,應用程式名稱 atom 或 topic-name atom 都不應該是Null (。
當認可任何含有隨附 Atom 的訊息時,應用程式張貼 WM_DDE_ACK 可以重複使用隨附原始訊息的 Atom,也可以刪除它並建立新的訊息。
認可 WM_DDE_EXECUTE時,張貼 WM_DDE_ACK 的應用程式應該重複使用原始 WM_DDE_EXECUTE 訊息中所識別的全域記憶體物件。
所有張貼WM_DDE_ACK訊息都必須呼叫PackDDElParam 函式或 ReuseDDElParam函式來建立或重複使用lParam參數。
如果應用程式已藉由張貼 WM_DDE_TERMINATE 來起始交談終止,且正在等候確認,則等候的應用程式不應該以正面或負面方式認可 () 其他應用程式傳送的任何後續訊息。 等候的應用程式應該刪除這些交錯訊息中所接收的任何 Atom 或共用記憶體物件。 如果fRelease旗標在WM_DDE_POKE和WM_DDE_DATA訊息中設定為FALSE,則不應該釋放記憶體物件。
接收
接收 WM_DDE_ACK 訊息的應用程式應該刪除訊息隨附的所有 Atom。 如果應用程式收到WM_DDE_ACK回應隨附的全域記憶體物件訊息,且物件是以設定為FALSE的fRelease旗標傳送,則應用程式會負責刪除物件。
如果應用程式收到以回復WM_DDE_ADVISE訊息所張貼的負WM_DDE_ACK訊息,應用程式應該刪除以原始WM_DDE_ADVISE訊息張貼的全域記憶體物件。 如果應用程式收到以回復WM_DDE_DATA、WM_DDE_POKE或WM_DDE_EXECUTE訊息所張貼的負WM_DDE_ACK訊息,應用程式應該刪除以原始WM_DDE_DATA、WM_DDE_POKE或WM_DDE_EXECUTE訊息張貼的全域記憶體物件。
接收張貼WM_DDE_ACK訊息的應用程式必須使用FreeDDElParam函式釋放lParam參數。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 |
Windows 2000 專業版 [僅限傳統型應用程式] |
最低支援的伺服器 |
Windows 2000 Server [僅限傳統型應用程式] |
標頭 |
|