共用方式為


OleRegGetUserType 函式 (ole2.h)

從登錄取得指定類別的使用者型別。

自定義 DLL 物件應用程式的開發人員會使用此函式來模擬 OLE 預設處理程式的行為。

語法

HRESULT OleRegGetUserType(
  [in]  REFCLSID clsid,
  [in]  DWORD    dwFormOfType,
  [out] LPOLESTR *pszUserType
);

參數

[in] clsid

要要求使用者類型之類別的 CLSID。

[in] dwFormOfType

用戶可呈現字串的格式。 可能的值取自列舉 USERCLASSTYPE

[out] pszUserType

接收使用者類型的字串指標。

傳回值

此函式可以傳回標準傳回值E_OUTOFMEMORY,以及下列值。

傳回碼 描述
S_OK
已成功傳回用戶類型。
REGDB_E_CLASSNOTREG
類別物件未註冊任何 CLSID。
REGDB_E_READREGDB
從登錄讀取時發生錯誤。
OLE_E_REGDB_KEY
登錄遺漏 ProgID = MainUserTypeNameCLSID = MainUserTypeName 機碼。

備註

物件應用程式可以要求 OLE 以兩種方式之一取得指定類別的使用者類型名稱。 其中一種方式是呼叫 OleRegGetUserType。 另一個是傳回OLE_S_USEREG,以響應默認對象處理程式對 IOleObject::GetUserType的呼叫。 OLE_S_USEREG會指示默認處理程式呼叫 OleRegGetUserType。 因為 DLL 物件應用程式無法傳回OLE_S_USEREG,所以它們必須呼叫 OleRegGetUserType,而不是將作業委派給對象處理程式。

OleRegGetUserType 函式及其同層級函式 OleRegGetMiscStatusOleRegEnumFormatEtcOleRegEnumVerbs 提供一種方式,讓自定義 DLL 物件應用程式的開發人員模擬 OLE 的默認物件處理程序行為,以從登錄取得對象的相關信息。 藉由使用這些函式,您可以避免撰寫自己的大量工作,以及直接在登錄中運作時固有的陷阱。 此外,您不需要自行撰寫這些函式的程式代碼,就能獲得這些函式的未來增強功能和優化。

規格需求

需求
最低支援的用戶端 Windows 2000 專業版 [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平台 Windows
標頭 ole2.h
程式庫 Ole32.lib
Dll Ole32.dll
API 集合 ext-ms-win-com-ole32-l1-1-3 (於 Windows 10 10.0.10240 版)

另請參閱

IOleObject::GetUserType

OleRegEnumFormatEtc

OleRegEnumVerbs

OleRegGetMiscStatus