Condividi tramite


Funzione SHCoCreateInstance (shlobj_core.h)

[SHCoCreateInstance è disponibile per l'uso nei sistemi operativi specificati nella sezione Requisiti. È possibile che in versioni successive sia stata modificata o non sia più disponibile. Usare invece CoCreateInstance.]

Crea oggetti COM (Component Object Model) implementati in Shell32.dll.

Sintassi

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

Parametri

[in, optional] pszCLSID

Tipo: PCWSTR

Puntatore a una stringa da convertire in CLSID. Se NULL, pclsid viene usato come CLSID.

[in, optional] pclsid

Tipo: const CLSID*

CLSID da creare.

[in, optional] pUnkOuter

Tipo: IUnknown*

Puntatore a IUnknown esterno. Usato per l'aggregazione.

[in] riid

Tipo: REFIID

Riferimento all'IID dell'interfaccia da recuperare tramite ppv.

[out] ppv

Tipo: void**

Quando questa funzione viene restituita correttamente, riceve il puntatore di interfaccia richiesto in riid.

Valore restituito

Tipo: HRESULT

Se questa funzione ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore HRESULT .

Commenti

È consigliabile usare la macro IID_PPV_ARGS , definita in Objbase.h, per creare un pacchetto dei parametri riid e ppv . Questa macro fornisce l'IID corretto in base all'interfaccia a cui punta il valore in ppv, che elimina la possibilità di un errore di codifica in riid che potrebbe causare risultati imprevisti.

Requisiti

Requisito Valore
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione shlobj_core.h (includere Shlobj.h)
Libreria Shell32.lib
DLL Shell32.dll (versione 5.0 o successiva)