OleUIPasteSpecialA 函式 (oledlg.h)
叫用標準 [貼上特殊] 對話框,讓用戶選取要貼上或貼上連結的剪貼簿物件格式。
語法
UINT OleUIPasteSpecialA(
[in] LPOLEUIPASTESPECIALA unnamedParam1
);
參數
[in] unnamedParam1
OLEUIPASTESPECIAL 結構的指標。
傳回值
標準成功/錯誤定義
傳回碼 | Description |
---|---|
|
未知的失敗 (未使用) 。 |
|
使用者按下 [確定] 按鈕。 |
|
沒有錯誤,與OLEUI_OK相同。 |
|
使用者按下 [取消] 按鈕。 |
標準欄位驗證錯誤
傳回碼 | Description |
---|---|
|
所有對話框常見的錯誤位於範圍OLEUI_ERR_STANDARDMIN OLEUI_ERR_STANDARDMAX。 這個值可讓應用程式測試標準訊息,以便向用戶顯示錯誤訊息。 |
|
傳遞至函式之 OLEUIXXX 結構的指標為 NULL。 |
|
許可權不足,無法讀取或寫入 OLEUIXXX 結構。 |
|
cbstruct 值不正確。 |
|
hWndOwner 值無效。 |
|
lpszCaption 值無效。 |
|
lpfnHook 值無效。 |
|
hInstance 值無效。 |
|
lpszTemplate 值無效。 |
|
hResource 值無效。 |
初始化錯誤
傳回碼 | Description |
---|---|
|
找不到對話框範本。 |
|
無法載入對話框範本。 |
|
對話框初始化失敗。 |
|
呼叫 LocalAlloc 或標準 IMalloc 配置器失敗。 |
|
呼叫 GlobalAlloc 或標準 IMalloc 配置器失敗。 |
|
無法呼叫 LoadString 以從連結庫取得本地化的資源。 |
|
標準 IMalloc 配置器的呼叫失敗。 |
函式特定錯誤
傳回碼 | Description |
---|---|
|
所有對話框常見的錯誤位於範圍OLEUI_ERR_STANDARDMIN OLEUI_ERR_STANDARDMAX。 這個值可讓應用程式測試標準訊息,以便向用戶顯示錯誤訊息。 |
|
OLEUIPASTESPECIAL 的 lpSrcDataObject 成員無效。 |
|
OLEUIPASTESPECIAL 的 arrPasteEntries 成員無效。 |
|
OLEUIPASTESPECIAL 的 arrLinkTypes 成員無效。 |
|
顯示對話框時,剪貼簿內容已變更。 |
|
lpSrcDataObj 成員不正確。 |
備註
[ 貼上特殊] 對話框的設計假設您願意允許使用者連結至物件,您也願意允許使用者內嵌該物件。 因此,如果已設定任何與 OLEUIPASTEFLAG 列舉相關聯的OLEUIPASTE_LINKTYPE旗標,則也必須設定OLEUIPASTE_PASTE旗標,才能讓數據格式出現在 [ 貼上特殊 ] 對話框中。
標準 [貼上特殊] 對話方塊的 [來源] 欄位中所顯示的文字是實作於 Oledlg32.dll 中,其位移以位元組為單位的 Null 終止字串,是在要貼上之物件之 OBJECTDESCRIPTOR 結構的 dwSrcofCopy 成員中指定。 如果這個物件無法使用 OBJECTDESCRIPTOR 結構,對話框會顯示與CF_LINKSOURCEDESCRIPTOR相關聯的任何文字。 如果兩個結構都無法使用,對話框會尋找CF_FILENAME。 如果找不到CF_FILENAME,對話框會顯示字串「未知的來源」。
若要釋放從 [插入物件] 或 [貼上特殊] 對話框傳回的 HMETAFILEPICT,請刪除句柄上的附加元檔,如下所示。
void FreeHmetafilepict(HMETAFILEPICT hmfp)
{
if (hmfp != NULL)
{
LPMETAFILEPICT pmfp = GlobalLock(hmfp);
DeleteMetaFile(pmfp->hMF);
GlobalUnlock(hmfp);
GlobalFree(hmfp);
}
else
{
// Handle null pointers here.
exit(0);
}
}
注意
oledlg.h 標頭會將 OLEUIPASTESPECIAL 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | oledlg.h |
程式庫 | OleDlg.lib |
Dll | OleDlg.dll |