_com_ptr_t::CreateInstance
Microsoft 特定的
建立已指定 CLSID 或 ProgID 之物件的新執行個體。
HRESULT CreateInstance(
const CLSID& rclsid,
IUnknown* pOuter=NULL,
DWORD dwClsContext = CLSCTX_ALL
) throw( );
HRESULT CreateInstance(
LPCWSTR clsidString,
IUnknown* pOuter=NULL,
DWORD dwClsContext = CLSCTX_ALL
) throw( );
HRESULT CreateInstance(
LPCSTR clsidStringA,
IUnknown* pOuter=NULL,
DWORD dwClsContext = CLSCTX_ALL
) throw( );
參數
rclsid
物件的 CLSID。clsidString
保留 CLSID (以 "{" 為開頭) 或 ProgID 的 Unicode 字串。clsidStringA
保留 CLSID (以 "{" 為開頭) 或 ProgID 的多位元組字串 (使用 ANSI 字碼頁)。dwClsContext
執行中的可執行程式碼內容。pOuter
彙總的外部未知。
備註
這些成員函式會呼叫 CoCreateInstance 建立新的 COM 物件,然後查詢這個智慧型指標的介面類型。 然後產生的指標就會封裝在這個 _com_ptr_t 物件內。 此時會呼叫 Release 讓先前封裝之指標的參考計數遞減。 這個常式會傳回 HRESULT,表示成功或失敗。
CreateInstance( rclsid**,** dwClsContext ):建立已指定 CLSID 之物件的執行中新執行個體。
CreateInstance( clsidString**,** dwClsContext ):建立已指定保存 CLSID (開頭為 "{") 或 ProgID 的 Unicode 字串之物件的執行中新執行個體。
CreateInstance( clsidStringA**,** dwClsContext ):建立已指定保存 CLSID (開頭為 "{") 或 ProgID 的多位元組字串之物件的執行中新執行個體。 呼叫 MultiByteToWideChar,它會假設字串位於 ANSI 字碼頁,而不是 OEM 字碼頁。
END Microsoft 特定的