Share via


_com_ptr_t::CreateInstance

Específico da Microsoft

Cria uma nova instância de um objeto dado um CLSID ou 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( );

Parâmetros

  • rclsid
    O CLSID de um objeto.

  • clsidString
    Uma cadeia de caracteres Unicode que contém CLSID (começando com “{") ou ProgID.

  • clsidStringA
    Uma cadeia de caracteres multibyte, usando a página de códigos ANSI, que contém CLSID (começando com “{") ou ProgID.

  • dwClsContext
    Contexto para execução do código executável.

  • pOuter
    O externo desconhecido para agregação.

Comentários

Essas funções membro chamam CoCreateInstance para criar um novo objeto COM e, em seguida, buscam o tipo de interface desse ponteiro inteligente. O ponteiro resultante é encapsulado nesse objeto _com_ptr_t. Release é chamado para diminuir a contagem de referências para o ponteiro anteriormente encapsulado. Essa rotina retorna HRESULT para indicar êxito ou falha.

  • CreateInstance( rclsid**,** dwClsContext )   Cria uma nova instância em execução de um objeto a partir de um CLSID.

  • CreateInstance( clsidString**,** dwClsContext )   Cria uma nova instância em execução de um objeto a partir de uma cadeia de caracteres Unicode que contenha um CLSID (começando por "{") ou um ProgID.

  • CreateInstance( clsidStringA**,** dwClsContext )   Cria uma nova instância em execução de um objeto a partir de uma cadeia de caracteres multibyte que contenha um CLSID (começando por "{") ou um ProgID. Chama MultiByteToWideChar, que presume que a cadeia de caracteres esteja na página de códigos ANSI em vez de uma página de códigos OEM.

FIM de Específico da Microsoft

Consulte também

Referência

Classe _com_ptr_t