Fonction SHCreateShellItemArrayFromDataObject (shobjidl_core.h)
Crée un objet de tableau d’éléments Shell à partir d’un objet de données.
Syntaxe
SHSTDAPI SHCreateShellItemArrayFromDataObject(
[in] IDataObject *pdo,
[in] REFIID riid,
[out] void **ppv
);
Paramètres
[in] pdo
Type : IDataObject*
Pointeur vers l’interface IDataObject .
[in] riid
Type : REFIID
Référence à l’ID d’interface souhaité.
[out] ppv
Type : void**
Lorsque cette méthode retourne, contient le pointeur d’interface demandé dans riid. Il s’agit généralement d’IShellItemArray.
Valeur retournée
Type : HRESULT
Si cette fonction réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT.
Remarques
Cette fonction est utile pour les extensions Shell qui implémentent IShellExtInit et passent un objet de données à la méthode IShellExtInit ::Initialize ; par exemple, les gestionnaires de menus contextuels.
Cette API vous permet de convertir l’objet de données en élément Shell que le gestionnaire peut consommer. Il est recommandé aux gestionnaires d’utiliser un tableau d’éléments Shell plutôt que des formats de Presse-papiers tels que CF_HDROP et CFSTR_SHELLIDLIST (également appelé HIDA), car cela simplifie le code et permet d’améliorer certaines performances.
Le tableau d’éléments d’interpréteur de commandes résultant contient une référence à l’objet de données source. Par conséquent, cet objet de données doit rester valide pendant la durée de vie du tableau d’éléments de l’interpréteur de commandes. Notamment, les objets de données passés aux méthodes IDropTarget ne sont plus valides une fois l’opération de suppression terminée.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2008 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | shobjidl_core.h (inclure Shobjidl.h) |
DLL | Shell32.dll |
Ensemble d’API | ext-ms-win-shell-shell32-l1-2-2 (introduit dans Windows 10, version 10.0.14393) |