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在失败。 有关这些错误的说明参见 CoCreateClassInstance 和 CLSIDFromProgID。
备注
如果该方法的第一个窗体调用,CLSIDFromProgID 用于恢复CLSID。 两种形式然后调用 CoCreateClassInstance。
如果 CComPtrBase::p 使用NULL,不相等在调试版本中,断言会出现错误。
要求
Header: atlcomcli.h