Share via


IMDSPEnumStorage::Next

banner art

The Next method returns a pointer to the next celt IMDSPStorage interfaces. This method must be implemented. It must not return WMDM_E_NOTSUPPORTED or E_NOTIMPL. For more information, see the second table under Implementing Service Providers.

Syntax

HRESULT Next(
  ULONG  celt,
  IMDSPStorage**  ppStorage,
  ULONG*  pceltFetched
);

Parameters

celt

[in]  Number of storage interfaces requested.

ppStorage

[out]  Array of pointers to the number of IMDSPStorage interfaces specified in celt. If NULL is returned, no more storage media exist, or an error has occurred. If celt is more than 1, the caller must allocate enough memory to store celt number of interface pointers.

pceltFetched

[out]  Pointer to a ULONG variable that receives the count of interfaces returned.

Return Values

The method returns an HRESULT. All the interface methods in Windows Media Device Manager and service provider can return any of the following classes of error codes:

  • Standard COM error codes
  • Windows error codes converted to HRESULT values
  • Windows Media Device Manager error codes

For a complete list of possible error codes, see Error Codes.

Possible values include, but are not limited to, those in the following table.

Return code Description
S_OK The method succeeded.
S_FALSE Number of interfaces retrieved is fewer than requested.
E_FAIL An unspecified error occurred.

Remarks

When there are no more storage interfaces, or when there are fewer storage interfaces than requested, the return value from Next is S_FALSE. When this happens, the pceltFetched parameter must be queried to determine how many interfaces, if any, were returned.

The storage enumerator may not reflect the effect of media insertion and removal. In such cases, the client should obtain a new enumerator object.

Requirements

Header: Defined in wmsp.idl.

Library: mssachlp.lib

See Also