IEnumIDList ::Next, méthode (shobjidl_core.h)
Récupère le nombre spécifié d’identificateurs d’élément dans la séquence d’énumération et avance la position actuelle par le nombre d’éléments récupérés.
Syntaxe
HRESULT Next(
[in] ULONG celt,
[out] PITEMID_CHILD *rgelt,
[out] ULONG *pceltFetched
);
Paramètres
[in] celt
Type : ULONG
Nombre d’éléments dans le tableau référencés par le paramètre rgelt .
[out] rgelt
Type : LPITEMIDLIST*
Adresse d’un pointeur vers un tableau de pointeurs ITEMIDLIST qui reçoivent les identificateurs d’élément. L’implémentation doit allouer ces identificateurs d’élément à l’aide de CoTaskMemAlloc. L’application appelante est chargée de libérer les identificateurs d’élément à l’aide de CoTaskMemFree.
Les structures ITEMIDLIST retournées dans le tableau sont relatives au IShellFolder énuméré.
[out] pceltFetched
Type : ULONG*
Pointeur vers une valeur qui reçoit le nombre d’identificateurs d’élément réellement retournés dans rgelt. Le nombre peut être inférieur à la valeur spécifiée dans le paramètre celt . Ce paramètre peut être NULL à l’entrée uniquement si celt = 1, car dans ce cas, la méthode ne peut récupérer qu’un (S_OK) ou zéro (S_FALSE).
Valeur retournée
Type : HRESULT
Retourne S_OK si la méthode a correctement récupéré les éléments celtes demandés. Cette méthode retourne S_OK uniquement si le nombre total d’éléments demandés est récupéré avec succès.
S_FALSE indique que plus d’éléments ont été demandés qu’il n’en reste dans l’énumération. La valeur pointée par le paramètre pceltFetched spécifie le nombre réel d’éléments récupérés. Notez que la valeur sera 0 s’il n’y a plus d’éléments à récupérer.
Retourne une valeur d’erreur définie par COM dans le cas contraire.
Remarques
Si cette méthode retourne un code d’erreur COM (Component Object Model) (tel que déterminé par la macro FAILED ), aucune entrée du tableau rgelt n’est valide à la sortie. Si cette méthode retourne un code de réussite (tel que S_OK ou S_FALSE), l’ULONG vers lequel pointe le paramètre pceltFetched détermine le nombre d’entrées du tableau rgelt valides à la sortie.
La distinction est importante dans le cas où le celte> 1. Par exemple, si vous transmettez celt=10 et qu’il ne reste que 3 éléments, *pceltFetched aura la valeur 3 et la méthode retournera S_FALSE ce qui signifie que vous avez atteint la fin du fichier. Les trois éléments extraits sont stockés dans rgelt et sont valides.
Configuration requise
Condition requise | Valeur |
---|---|
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) |