共用方式為


CComPtrBase::CoCreateInstance

呼叫這個方法會建立類別的物件與指定的類別 ID 或程式 ID.

HRESULT CoCreateInstance(
   LPCOLESTR szProgID,
   LPUNKNOWN pUnkOuter = NULL,
   DWORD dwClsContext = CLSCTX_ALL 
) throw( );
HRESULT CoCreateInstance(
   REFCLSID rclsid,
   LPUNKNOWN pUnkOuter = NULL,
   DWORD dwClsContext = CLSCTX_ALL 
) throw( );

參數

  • szProgID
    為 ProgID 的指標,用來復原 CLSID。

  • pUnkOuter
    如果 NULL,表示為彙總的一部分,並不會建立任何物件。 如果非NULL,是指向彙總物件的 IUnknown 介面 (控制項 IUnknown)。

  • dwClsContext
    程式碼處理新建立的物件將執行的內容。

  • rclsid
    CLSID 與用來建立物件的資料和程式碼。

傳回值

如果成功則傳回 S_OK 或 REGDB_E_CLASSNOTREG、CLASS_E_NOAGGREGATION、CO_E_CLASSSTRING 或 E_NOINTERFACE 發生錯誤。 針對這些錯誤的說明請參閱 CoCreateClassInstanceCLSIDFromProgID

備註

如果這個方法的第一 CLSIDFromProgID 呼叫,用來復原 CLSID。 兩個表單會呼叫 CoCreateClassInstance

如果 CComPtrBase::p NULL,不等於在偵錯組建中,判斷提示將會發生錯誤。

需求

Header: atlcomcli.h

請參閱

參考

CComPtrBase 類別