IEnumIDList (Interfaces)
Last changed: -131.107.0.95

.
Summary
TODO - a short description

C# Signature:

    [ComImport]
    [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
    [Guid("000214F2-0000-0000-C000-000000000046")]
    public interface IEnumIDList {

        /// <summary>
        /// Retrieves the specified number of item identifiers in the
        /// enumeration sequence and advances the current position by
        /// the number of items retrieved.
        /// </summary>
        /// <param name="celt">Number of elements in the array pointed to by the rgelt parameter.</param>
        /// <param name="rgelt">
        /// Address of an array of ITEMIDLIST pointers that receives the item identifiers. The implementation must allocate these item identifiers
        /// using the Shell's allocator (retrieved by the SHGetMalloc function). The calling application is responsible for freeing the item
        /// identifiers using the Shell's allocator.
        /// </param>
        /// <param name="pceltFetched">
        /// Address of a value that receives a count of the item identifiers actually returned in rgelt. The count can be smaller than the value
        /// specified in the celt parameter. This parameter can be NULL only if celt is one.
        /// </param>
        [PreserveSig()]
        uint Next(uint celt, out IntPtr rgelt, out IntPtr pceltFetched);

        /// <summary>
        /// Skips over the specified number of elements in the enumeration sequence.
        /// </summary>
        /// <param name="celt">Number of item identifiers to skip.</param>
        [PreserveSig()]
        uint Skip(uint celt);

        /// <summary>
        /// Returns to the beginning of the enumeration sequence.
        /// </summary>
        [PreserveSig()]
        uint Reset();

        /// <summary>
        /// Creates a new item enumeration object with the same contents and state as the current one.
        /// </summary>
        /// <param name="ppenum">
        /// Address of a pointer to the new enumeration object. The calling application must
        /// eventually free the new object by calling its Release member function.
        /// </param>
        [PreserveSig()]
        uint Clone(out IEnumIDList ppenum);
    }

VB Signature:

<ComImport()> _
<InterfaceType(ComInterfaceType.InterfaceIsIUnknown)> _
<Guid("000214F2-0000-0000-C000-000000000046")> _
Public Interface IEnumIDList
     <PreserveSig()> _
     Function [Next]( _
     ByVal celt As Integer, _
     ByRef rgelt As IntPtr, _
     ByRef pceltFetched As IntPtr) As Integer

     <PreserveSig()> _
     Function Skip(ByVal celt As Integer) As Integer

     <PreserveSig()> _
     Function Reset() As Integer

     <PreserveSig()> _
     Function Clone(ByRef ppenum As IEnumIDList) As Integer

End Interface

User-Defined Types:

None.

Notes:

None.

Documentation
IEnumIDList on MSDN