Partager via


SHCreateShellItem, fonction (shlobj_core.h)

Crée un objet IShellItem .

Note Il est recommandé d’utiliser SHCreateItemWithParent ou SHCreateItemFromIDList au lieu de cette fonction.
 

Syntaxe

SHSTDAPI SHCreateShellItem(
  [in, optional] PCIDLIST_ABSOLUTE pidlParent,
  [in, optional] IShellFolder      *psfParent,
  [in]           PCUITEMID_CHILD   pidl,
  [out]          IShellItem        **ppsi
);

Paramètres

[in, optional] pidlParent

Type : PCIDLIST_ABSOLUTE

PIDL pour le parent. Cette valeur peut être NULL.

[in, optional] psfParent

Type : IShellFolder*

Pointeur vers le IShellFolder parent. Cette valeur peut être NULL.

[in] pidl

Type : PCUITEMID_CHILD

PIDL de l’élément demandé. Si les informations parentes ne sont pas incluses dans pidlParent ou psfParent, il doit s’agir d’un PIDL absolu.

[out] ppsi

Type : IShellItem**

Lorsque cette méthode retourne, contient le pointeur d’interface vers le nouvel objet IShellItem.

Valeur retournée

Type : HRESULT

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

Remarques

SHCreateShellItem crée un objet qui représente un élément d’espace de noms Shell. L’appelant doit fournir des informations parentes dans pidlParent ou psfParent ; l’appelant peut également fournir un IDList absolu dans le paramètre pidl .

Il existe trois modèles d’appel valides pour cette fonction :

  1. Le dossier parent est identifié par un pidlParent IDList absolu. Le paramètre pidl pointe vers un IDList enfant qui identifie l’élément dans le dossier identifié par pidlParent.
    IShellItem *psi;
    SHCreateShellItem(pidlParent, NULL, pidlChild, &psi);
    
    
  2. Le dossier parent est identifié par psfParent. Le paramètre pidl pointe vers une IDList enfant qui identifie l’élément dans le dossier identifié par psfParent.
    IShellItem *psi;
    SHCreateShellItem(NULL, psfParent, pidlChild, &psi);
    
    
  3. L’élément est identifié par un IDList absolu passé au paramètre pidl .
    IShellItem *psi;
    SHCreateShellItem(NULL, NULL, pidlFull, &psi);
    
    

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows XP avec SP1 [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
Ensemble d’API ext-ms-win-shell-shell32-l1-2-2 (introduit dans Windows 10, version 10.0.14393)