Compartir a través de


Función SHCoCreateInstance (shlobj_core.h)

[SHCoCreateInstance está disponible para su uso en los sistemas operativos especificados en la sección Requisitos. En versiones posteriores podría modificarse o no estar disponible. En su lugar, use CoCreateInstance.]

Crea objetos de modelo de objetos componentes (COM) que se implementan en Shell32.dll.

Sintaxis

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

Puntero a una cadena que se va a convertir en un CLSID. Si es NULL, pclsid se usa como CLSID.

[in, optional] pclsid

Tipo: const CLSID*

CLSID que se va a crear.

[in, optional] pUnkOuter

Tipo: IUnknown*

Puntero a IUnknown externo. Se usa para la agregación.

[in] riid

Tipo: REFIID

Referencia al IID de la interfaz que se va a recuperar a través de ppv.

[out] ppv

Tipo: void**

Cuando esta función se devuelve correctamente, recibe el puntero de interfaz solicitado en riid.

Valor devuelto

Tipo: HRESULT

Si esta función se realiza correctamente, devuelve S_OK. De lo contrario, devuelve un código de error de HRESULT.

Comentarios

Se recomienda usar la macro IID_PPV_ARGS , definida en Objbase.h, para empaquetar los parámetros riid y ppv . Esta macro proporciona el IID correcto basado en la interfaz a la que apunta el valor de ppv, lo que elimina la posibilidad de un error de codificación en riid que podría dar lugar a resultados inesperados.

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado shlobj_core.h (incluya Shlobj.h)
Library Shell32.lib
Archivo DLL Shell32.dll (versión 5.0 o posterior)