DdeCreateStringHandleA 函式 (ddeml.h)
建立識別指定字串的句柄。 動態數據交換 (DDE) 用戶端或伺服器應用程式可以將字元串句柄當做參數傳遞至其他動態數據交換管理連結庫, (DDEML) 函式。
語法
HSZ DdeCreateStringHandleA(
[in] DWORD idInst,
[in] LPCSTR psz,
[in] int iCodePage
);
參數
[in] idInst
類型: DWORD
先前呼叫 DdeInitialize 函式所取得的應用程式實例識別碼。
[in] psz
類型: LPTSTR
要為其建立句柄的 Null 終止字串。 此字串最多可以有 255 個字元。 此限制的原因是使用 Atom 實作 DDEML 字串管理功能。
[in] iCodePage
類型: int
要用來呈現字串的代碼頁。 此值應該 CP_WINANSI (預設代碼頁) 或CP_WINUNICODE,視用戶端應用程式是否呼叫 ANSI 或 Unicode 版本的 DdeInitialize 而定。
傳回值
類型: HSZ
如果函式成功,則傳回值為字串句柄。
如果函式失敗,傳回值為 0L。
DdeGetLastError 函式可用來取得錯誤碼,這可以是下列其中一個值:
備註
字串句柄的值與所識別字串的大小寫無關。
當應用程式建立字串句柄或收到回呼函式中的字串句柄,然後使用 DdeKeepStringHandle 函式來保留它時,應用程式必須在不再需要時釋放該字串句柄。
實例特定的字串句柄無法從字串句柄對應至字元串,也無法對應回字串句柄。 如下列範例所示, DdeQueryString 函式會從字元串句柄建立字串, 而 DdeCreateStringHandle 會從該字串建立字元串句柄,但兩個句柄不同:
DWORD idInst;
DWORD cb;
HSZ hszInst, hszNew;
PSZ pszInst;
DdeQueryString(idInst, hszInst, pszInst, cb, CP_WINANSI);
hszNew = DdeCreateStringHandle(idInst, pszInst, CP_WINANSI);
// hszNew != hszInst !
注意
ddeml.h 標頭會根據 UNICODE 預處理器常數的定義,將 DdeCreateStringHandle 定義為自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | ddeml.h (包含 Windows.h) |
程式庫 | User32.lib |
Dll | User32.dll |
另請參閱
概念
參考