WM_DDE_POKE訊息
動態資料交換 (DDE) 用戶端應用程式會將 WM_DDE_POKE 訊息張貼至 DDE 伺服器應用程式。 用戶端會使用此訊息來要求伺服器接受未經要求的資料項目。 伺服器預期會回復 WM_DDE_ACK 訊息,指出它是否接受資料項目。
若要張貼此訊息,請使用下列參數呼叫 PostMessage 函式。
#define WM_DDE_POKE 0x03E7
參數
-
wParam
-
張貼訊息之用戶端視窗的控制碼。
-
lParam
-
低序字是全域記憶體物件的控制碼,其中包含具有資料和額外資訊的 DDEPOKE 結構。
高序單字包含全域 Atom,可識別正在傳送資料或通知的資料項目。
備註
張貼
用戶端應用程式必須使用 GlobalAlloc 函式,為全域記憶體物件配置記憶體。 如果下列任一條件成立,用戶端應用程式必須刪除物件:
- 伺服器應用程式會以負 WM_DDE_ACK 訊息回應。
- fRelease成員為FALSE,但伺服器應用程式會以正數或負WM_DDE_ACK回應。
用戶端應用程式必須使用 GlobalAddAtom 函式建立 Atom。
用戶端應用程式必須呼叫PackDDElParam函式或ReuseDDElParam函式,來建立或重複使用WM_DDE_POKElParam參數。
接收
伺服器應用程式應該張貼 WM_DDE_ACK 訊息,以正面或負面回應。 張貼 WM_DDE_ACK時,伺服器可以重複使用 Atom,也可以將其刪除並建立新的。
伺服器必須呼叫PackDDElParam函式或ReuseDDElParam函式,以建立或重複使用WM_DDE_ACKlParam參數。
若要釋放全域記憶體物件,伺服器應該呼叫 GlobalFree 函式。 此外,如果資料格式是 CF_DSPMETAFILEPICT 或 CF_METAFILEPICT,伺服器也必須使用內嵌中繼檔控制碼呼叫 DeleteMetaFile 。 這兩種格式具有額外的間接層級;也就是說,應用程式必須鎖定物件以取得控制碼的指標,然後鎖定該控制碼以取得METAFILEPICT結構的指標,最後使用METAFILEPICT結構的hMF成員的控制碼呼叫DeleteMetaFile。
若要釋放物件,伺服器應該呼叫 FreeDDElParam 函式。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 |
Windows 2000 Professional [僅限傳統型應用程式] |
最低支援的伺服器 |
Windows 2000 Server [僅限桌面應用程式] |
標頭 |
|