3.4.5.2.4.4 IVdsService::QueryProviders (Opnum 6)

The QueryProviders method enumerates the providers of the server.

 HRESULT QueryProviders(
   [in] DWORD masks,
   [out] IEnumVdsObject** ppEnum
 );

masks: The combination of any values, by using a bitwise OR operator, that the VDS_QUERY_PROVIDER_FLAG enumeration defines. The values that are set in the mask specify the types of providers to return.

ppEnum: A pointer to an IEnumVdsObject interface that, if successfully completed, receives the IEnumVdsObject interface of the object that contains an enumeration of provider objects on the server. Callers MUST release the interface that is received when they are done with it.

Return Values: The method MUST return zero or a non-error HRESULT (as specified in [MS-ERREF]) to indicate success, or return an implementation-specific nonzero error code to indicate failure. For the HRESULT values predefined by the Virtual Disk Service Remote Protocol, see section 2.2.3.

When the server receives this message, it MUST validate the following parameter:

  • Verify that ppEnum is not NULL.

The server MUST point ppEnum to an IEnumVdsObject interface that contains the enumeration of provider objects in the list of cached storage management objects, as specified in section 3.4.1.3, and return an HRESULT that indicates failure or success.