Partager via


Méthode IShellFolder::EnumObjects (shobjidl_core.h)

Permet à un client de déterminer le contenu d’un dossier en créant un objet d’énumération d’identificateur d’élément et en retournant son interface IEnumIDList . Les méthodes prises en charge par cette interface peuvent ensuite être utilisées pour énumérer le contenu du dossier.

Syntaxe

HRESULT EnumObjects(
  [in]  HWND        hwnd,
  [in]  SHCONTF     grfFlags,
  [out] IEnumIDList **ppenumIDList
);

Paramètres

[in] hwnd

Type : HWND

Si une entrée utilisateur est requise pour effectuer l’énumération, ce handle de fenêtre doit être utilisé par l’objet d’énumération comme fenêtre parente pour accepter l’entrée utilisateur. Par exemple, une boîte de dialogue pour demander un mot de passe ou inviter l’utilisateur à insérer un CD ou une disquette. Si hwndOwner est défini sur NULL, l’énumérateur ne doit pas publier de messages et, si une entrée utilisateur est requise, elle doit échouer en mode silencieux.

[in] grfFlags

Type : SHCONTF

Indicateurs indiquant les éléments à inclure dans l’énumération. Pour obtenir la liste des valeurs possibles, consultez le type énuméré SHCONTF .

[out] ppenumIDList

Type : IEnumIDList**

Adresse qui reçoit un pointeur vers l’interface IEnumIDList de l’objet d’énumération créé par cette méthode. Si une erreur se produit ou si aucun sous-objet approprié n’est trouvé, ppenumIDList est défini sur NULL.

Valeur retournée

Type : HRESULT

Retourne S_OK en cas de réussite, ou une valeur d'erreur dans le cas contraire. Certaines implémentations peuvent également retourner S_FALSE, indiquant qu’aucun enfant ne correspond aux grfFlags qui ont été passés. Si S_FALSE est retourné, ppenumIDList a la valeur NULL.

Remarques

Si la méthode retourne S_OK, ppenumIDList reçoit un pointeur vers un énumérateur. Dans ce cas, l’application appelante doit libérer l’objet IEnumIDList retourné en appelant sa méthode Release .

Si la méthode retourne S_FALSE, le dossier ne contient aucun sous-objet approprié et le pointeur spécifié dans ppenumIDList est défini sur NULL.

Si la méthode échoue, une valeur d’erreur est retournée et le pointeur spécifié dans ppenumIDList est défini sur NULL.

Si le dossier ne contient aucun sous-objet approprié, la méthode IShellFolder::EnumObjects est autorisée à définir *ppenumIDList sur NULL et à renvoyer S_FALSE, ou à définir *ppenumIDList sur un énumérateur qui ne produit aucun objet et retourne S_OK. Les demandes appelantes doivent être préparées pour les deux cas de réussite.

Configuration requise

   
Client minimal pris en charge Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête shobjidl_core.h (incluez Shobjidl.h)
DLL Shell32.dll (version 4.0 ou ultérieure)

Voir aussi

IShellFolder

IShellFolder2

SHGetDesktopFolder