Share via


Função SHCoCreateInstance (shlobj_core.h)

[SHCoCreateInstance está disponível para uso nos sistemas operacionais especificados na seção Requisitos. Ele poderá ser alterado ou ficar indisponível em versões subsequentes. Em vez disso, use CoCreateInstance.]

Cria objetos COM (Component Object Model) implementados no Shell32.dll.

Sintaxe

SHSTDAPI SHCoCreateInstance(
  [in, optional] PCWSTR      pszCLSID,
  [in, optional] const CLSID *pclsid,
  [in, optional] IUnknown    *pUnkOuter,
  [in]           REFIID      riid,
  [out]          void        **ppv
);

Parâmetros

[in, optional] pszCLSID

Tipo: PCWSTR

Um ponteiro para uma cadeia de caracteres a ser convertida em UM CLSID. Se NULL, pclsid será usado como CLSID.

[in, optional] pclsid

Tipo: const CLSID*

O CLSID a ser criado.

[in, optional] pUnkOuter

Tipo: IUnknown*

Um ponteiro para IUnknown externo. Usado para agregação.

[in] riid

Tipo: REFIID

Uma referência à IID da interface a ser recuperada por meio de ppv.

[out] ppv

Tipo: void**

Quando essa função retorna com êxito, recebe o ponteiro de interface solicitado em riid.

Retornar valor

Tipo: HRESULT

Se essa função for bem-sucedida, ela retornará S_OK. Caso contrário, ele retornará um código de erro HRESULT.

Comentários

Recomendamos que você use a macro IID_PPV_ARGS , definida em Objbase.h, para empacotar os parâmetros riid e ppv . Essa macro fornece o IID correto com base na interface apontada pelo valor em ppv, o que elimina a possibilidade de um erro de codificação no riid que pode levar a resultados inesperados.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows XP [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho shlobj_core.h (inclua Shlobj.h)
Biblioteca Shell32.lib
DLL Shell32.dll (versão 5.0 ou posterior)