The IEnumIDList interface enumerates item identifiers associated with shell folder objects. First, use IShellFolder::EnumObjects to create an item enumeration object and then use IEnumIDList to iterate through the item IDs in the enumeration object.
IEnumIDList has the same methods as all enumerator interfaces: Next, Skip, Reset, and Clone. Next iterates through the item IDs one or more at a time, Skip passes over the next item ID in the list, Reset returns to the beginning of the item ID list, and Clone returns a duplicate item enumeration object.
When to Implement
You can implement this interface when you want a caller to be able to enumerate the item IDs contained in a folder object. You get a pointer to IEnumIDList through IShellFolder::EnumObjects.
When to Use
You don't use this interface directly. IShellFolder::EnumObjects creates an enumeration object of this kind. In this case, the enumeration is a set of item identifiers. The shell calls then IEnumIDList methods to enumerate the items contained in a enumeration object.
Methods in Vtable Order
IUnknown Methods | Description |
QueryInterface | Returns pointers to supported interfaces. |
AddRef | Increments reference count. |
Release | Decrements reference count. |
IEnumIDList Methods | Description |
Next | Retrieves the specified number of item identifiers. |
Skip | Skip over the specified number of items. |
Reset | Return to the beginning of the enumeration. |
Clone | Creates a new item enumeration object identical to the current one. |