OleUIInsertObjectA 函式 (oledlg.h)
叫用標準 [插入物件] 對話框,讓用戶選取物件來源和類別名稱,以及將對象顯示為本身或圖示的選項。
語法
UINT OleUIInsertObjectA(
[in] LPOLEUIINSERTOBJECTA unnamedParam1
);
參數
[in] unnamedParam1
此對話框內含 OLEUIINSERTOBJECT 結構的指標。
傳回值
標準成功/錯誤定義
傳回碼 | Description |
---|---|
|
未知的失敗 (未使用) 。 |
|
使用者按下 [確定] 按鈕。 |
|
沒有錯誤,與OLEUI_OK相同。 |
|
使用者按下 [取消] 按鈕。 |
標準欄位驗證錯誤
傳回碼 | Description |
---|---|
|
所有對話框的常見錯誤都位於OLEUI_ERR_STANDARDMAX的範圍OLEUI_ERR_STANDARDMIN。 此值可讓應用程式測試標準訊息,以便向用戶顯示錯誤訊息。 |
|
傳遞至函式之 OLEUIXXX 結構的指標為 NULL。 |
|
讀取或寫入 OLEUIXXX 結構的許可權不足。 |
|
cbstruct 值不正確。 |
|
hWndOwner 值無效。 |
|
lpszCaption 值無效。 |
|
lpfnHook 值無效。 |
|
hInstance 值無效。 |
|
lpszTemplate 值無效。 |
|
hResource 值無效。 |
初始化錯誤
傳回碼 | Description |
---|---|
|
找不到對話框範本。 |
|
無法載入對話框範本。 |
|
對話框初始化失敗。 |
|
呼叫 LocalAlloc 或標準 IMalloc 配置器失敗。 |
|
呼叫 GlobalAlloc 或標準 IMalloc 配置器失敗。 |
|
無法從連結庫呼叫 LoadString 以取得本地化的資源。 |
|
對標準 IMalloc 配置器的呼叫失敗。 |
函式特定錯誤
傳回碼 | Description |
---|---|
|
所有對話框的常見錯誤都位於OLEUI_ERR_STANDARDMAX的範圍OLEUI_ERR_STANDARDMIN。 此值可讓應用程式測試標準訊息,以便向用戶顯示錯誤訊息。 |
|
lpszFile 值無效,或用戶沒有足夠的寫入許可權。這個 lpszFile 成員會指向連結或插入的檔名。 |
|
ppvOjb 值無效。 這個成員指向傳回物件指標的位置。 |
|
lpIOleClientSite 值無效。 這個成員會指向 物件的用戶端月臺。 |
|
lpIStorage 值無效。 這個成員指向要用於物件的記憶體。 |
|
lpIO 的sc成員有其他錯誤資訊。 |
|
lpClsidExclude 值無效。 此成員包含要排除的CLSID清單。 |
|
cchFile 或 lpszFile 值無效。 cchFile 成員會指定 lpszFile 緩衝區的大小。 lpszFile 成員會指向連結或插入的檔名。 |
備註
OleUIInsertObject 可讓使用者從清單框中選取要插入的物件類型,其中包含在用戶系統上註冊的物件應用程式。 若要填入該清單框, OleUIInsertObject 會周遊登錄,並新增符合下列準則的每個物件伺服器:
- 登錄專案不包含 NotInsertable 機碼。
- 登錄專案包含 OLE 1.0 樣式通訊協定\\StdFileEditing\\Server 機碼。
- 登錄專案包含可插入的機碼。
- 物件的 CLSID 不會包含在要排除 (OLEUIINSERTOBJECT) 的lpClsidExclude 成員清單中。
若要釋放從 [插入物件] 或 [貼上特殊] 對話框傳回的 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 標頭會根據 UNICODE 預處理器常數的定義,將 OLEUIINSERTOBJECT 定義為自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 專業版 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | oledlg.h |
程式庫 | OleDlg.lib |
Dll | OleDlg.dll |