_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.clsidStringA
Многобайтовая строка с кодовой страницей ANSI, которая содержит либо CLSID (начинается с символа "{"), либо ProgID.dwClsContext
Контекст для выполняющегося исполняемого кода.pOuter
Внешняя неизвестная строка для агрегирования.
Заметки
Эти функции-члены вызывают CoCreateInstance для создания нового COM-объект, а затем запрашивают тип интерфейса данного интеллектуального указателя. Результирующий указатель затем инкапсулируется в этот объект _com_ptr_t. Метод Release вызывается для уменьшения числа ссылок для ранее инкапсулированного указателя. Эта процедура возвращает значение HRESULT, которое указывает успешность или сбой выполнения.
CreateInstance( rclsid**,** dwClsContext ) Создает новый выполняемый экземпляр объекта, учитывая CLSID.
CreateInstance( clsidString**,** dwClsContext ) Создает новый выполняемый экземпляр объекта, учитывая строку Юникода, содержащую CLSID (начиная с "{") или ProgID.
CreateInstance( clsidStringA**,** dwClsContext ) Создает новый выполняемый экземпляр объекта, учитывая строку многобайтовых символов, содержащую CLSID (начиная с "{") или ProgID. Вызывает метод MultiByteToWideChar, который предполагает, что строка имеет кодовую страницу ANSI, а не кодовую страницу OEM.
Завершение блока, относящегося только к системам Microsoft