DdeCreateDataHandle 函式 (ddeml.h)
建立動態 Data Exchange (DDE) 物件,並將來自指定緩衝區的資料填入物件。 DDE 應用程式會在涉及將資料傳遞至夥伴應用程式的交易期間使用此函式。
語法
HDDEDATA DdeCreateDataHandle(
[in] DWORD idInst,
[in, optional] LPBYTE pSrc,
[in] DWORD cb,
[in] DWORD cbOff,
[in, optional] HSZ hszItem,
[in] UINT wFmt,
[in] UINT afCmd
);
參數
[in] idInst
類型: DWORD
先前呼叫 DdeInitialize 函式所取得的應用程式實例識別碼。
[in, optional] pSrc
類型: LPBYTE
要複製到 DDE 物件的資料。 如果此參數為 Null,則不會將資料複製到 物件。
[in] cb
類型: DWORD
要從 pSrc所指向的緩衝區複製的記憶體數量,以位元組為單位。 如果資料是字串) , (包含終止的 Null。 如果此參數為零,則會忽略 pSrc 參數。
[in] cbOff
類型: DWORD
從 pSrc 參數指向之緩衝區開頭的位移,以位元組為單位。 從這個位移開始的資料會從緩衝區複製到 DDE 物件。
[in, optional] hszItem
類型: HSZ
字串的控制碼,指定對應至 DDE 物件的資料項目。 此控制碼必須由先前呼叫 DdeCreateStringHandle 函式所建立。 如果要在 XTYP_EXECUTE 交易中使用資料控制碼,此參數必須是 0L。
[in] wFmt
類型: UINT
資料的標準剪貼簿格式。
[in] afCmd
類型: UINT
建立旗標。 這個參數可以 HDATA_APPOWNED,指定呼叫 DdeCreateDataHandle 函式的伺服器應用程式擁有此函式所建立的資料控制碼。 此旗標可讓應用程式與其他 DDEML 應用程式共用資料控制碼,而不是建立個別控制碼以傳遞至每個應用程式。 如果指定此旗標,應用程式最終必須使用 DdeFreeDataHandle 函式釋放與控制碼相關聯的共用記憶體物件。 如果未指定此旗標,則控制碼會在應用程式 DDE 回呼函式傳回資料控制碼之後建立控制碼的應用程式中變成無效,或是當做另一個 DDEML 函式中的參數使用。
傳回值
類型: HDDEDATA
如果函式成功,傳回值就是資料控制碼。
如果函式失敗,傳回值為 0L。
DdeGetLastError函式可用來取得錯誤碼,這可以是下列其中一個值:
備註
未定義 DDE 物件中的任何未填滿位置。
當資料控制碼當做另一個 DDEML 函數中的參數使用,或由 DDE 回呼函式傳回之後,控制碼只能用於控制碼所識別之 DDE 物件的讀取存取權。
需求
最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | ddeml.h (包含 Windows.h) |
程式庫 | User32.lib |
Dll | User32.dll |
另請參閱
概念
參考