Partager via


Fonction SHCoCreateInstance (shlobj_core.h)

[SHCoCreateInstance est disponible pour une utilisation dans les systèmes d’exploitation spécifiés dans la section Configuration requise. Il sera peut-être modifié ou indisponible dans les versions ultérieures. Utilisez plutôt CoCreateInstance.]

Crée des objets COM (Component Object Model) implémentés dans Shell32.dll.

Syntaxe

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

Paramètres

[in, optional] pszCLSID

Type : PCWSTR

Pointeur vers une chaîne à convertir en CLSID. Si la valeur est NULL, pclsid est utilisé comme CLSID.

[in, optional] pclsid

Type : const CLSID*

CLSID à créer.

[in, optional] pUnkOuter

Type : IUnknown*

Pointeur vers IUnknown externe. Utilisé pour l’agrégation.

[in] riid

Type : REFIID

Référence à l’IID de l’interface à récupérer via ppv.

[out] ppv

Type : void**

Lorsque cette fonction retourne correctement, reçoit le pointeur d’interface demandé dans riid.

Valeur retournée

Type : HRESULT

Si cette fonction réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT.

Remarques

Nous vous recommandons d’utiliser la macro IID_PPV_ARGS , définie dans Objbase.h, pour empaqueter les paramètres riid et ppv . Cette macro fournit l’IID correct en fonction de l’interface pointée vers la valeur dans ppv, ce qui élimine la possibilité d’une erreur de codage dans riid qui pourrait entraîner des résultats inattendus.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
Plateforme cible Windows
En-tête shlobj_core.h (inclure Shlobj.h)
Bibliothèque Shell32.lib
DLL Shell32.dll (version 5.0 ou ultérieure)