IMDServiceProvider::EnumDevices
The EnumDevices method enumerates the installed physical or software devices that are currently attached and are known by the service provider. 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 EnumDevices(
IMDSPEnumDevice** ppEnumDevice
);
Parameters
ppEnumDevice
[out] Pointer to an IMDSPEnumDevice object.
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. |
E_INVALIDARG | The ppEnumDevice parameter is an invalid or NULL pointer. |
WMDM_E_NOTCERTIFIED | The caller is not authorized, and calls to other service provider interfaces will also fail and return this code. |
Remarks
A service provider should return only the enumerator, which will enumerate only the devices that are currently attached to the computer and are supported by the service provider.
At present, Windows Media Device Manager does not support the returning of installed devices. Also, EnumDevices essentially provides a snapshot of the devices present at the time of the call. If new devices are inserted or removed, the service provider cannot notify the clients of that.
Requirements
Header: Defined in wmsp.idl.
Library: mssachlp.lib
See Also