Obligatorische und optionale Schnittstellen
In der folgenden Tabelle werden die obligatorischen und optionalen Schnittstellen und Methoden für die Implementierung von Dienstanbietern beschrieben. Alle Schnittstellen mit einer oder mehreren obligatorischen Methoden müssen implementiert werden. Eine obligatorische Methode kann keine WMDM_E_NOTSUPPORTED oder E_NOTIMPL zurückgeben.
Schnittstelle und Methode | Implementierungsoption |
---|---|
IMDServiceProvider::EnumDevices | Erforderlich. |
IMDServiceProvider::GetDeviceCount | Erforderlich. |
IMDServiceProvider2::CreateDevice | Optional. Diese Methode muss für die Unterstützung von PnP und Windows Explorer implementiert werden. |
IMDSPDevice::EnumStorage | Erforderlich. |
IMDSPDevice::GetDeviceIcon | Erforderlich. |
IMDSPDevice::GetFormatSupport | Erforderlich. |
IMDSPDevice::GetManufacturer | Erforderlich. |
IMDSPDevice::GetName | Erforderlich. |
IMDSPDevice::GetPowerSource | Optional. |
IMDSPDevice::GetSerialNumber | Optional. Für die Übertragung geschützter Inhalte verwendet Windows Media Geräte-Manager IMDSPStorageGlobals::GetSerialNumber. |
IMDSPDevice::GetStatus | Erforderlich. |
IMDSPDevice::GetType | Erforderlich. |
IMDSPDevice::GetVersion | Optional. |
IMDSPDevice::SendOpaqueCommand | Optional. |
IMDSPDevice2::GetCanonicalName | Optional. |
IMDSPDevice2::GetFormatSupport2 | Erforderlich. |
IMDSPDevice2::GetSpecifyPropertyPages | Optional. |
IMDSPDevice2::GetStorage | Optional. |
IMDSPDeviceControl-Schnittstelle | Optional. |
IMDSPEnumDevice::Clone | Erforderlich. |
IMDSPEnumDevice::Next | Erforderlich. |
IMDSPEnumDevice::Reset | Erforderlich. |
IMDSPEnumDevice::Skip | Erforderlich. |
IMDSPEnumStorage::Clone | Erforderlich. |
IMDSPEnumStorage::Weiter | Erforderlich. |
IMDSPEnumStorage::Reset | Erforderlich. |
IMDSPEnumStorage::Skip | Erforderlich. |
IMDSPObject::Close | Erforderlich. |
IMDSPObject::D elete | Erforderlich. |
IMDSPObject::Move | Optional. |
IMDSPObject::Open | Erforderlich. |
IMDSPObject::Read | Obligatorisch (wenn Windows Medienwiedergabe Unterstützung gewünscht ist). |
IMDSPObject::Rename | Optional. |
IMDSPObject::Seek | Optional. |
IMDSPObject::Write | Erforderlich. |
IMDSPObjectInfo-Schnittstelle | Optional. |
IMDSPRevoked-Schnittstelle | Optional. |
IMDSPStorage::CreateStorage | Nur obligatorisch, wenn dwAttributes WMDM_FILE_ATTR_FILE ist. |
IMDSPStorage::EnumStorage | Erforderlich. |
IMDSPStorage::GetAttributes | Erforderlich. |
IMDSPStorage::GetDate | Erforderlich. |
IMDSPStorage::GetName | Erforderlich. |
IMDSPStorage::GetRights | Optional. |
IMDSPStorage::GetSize | Erforderlich. |
IMDSPStorage::GetStorageGlobals | Erforderlich. |
IMDSPStorage::SendOpaqueCommands | Optional. |
IMDSPStorage::SetAttributes | Optional. |
IMDSPStorage2::CreateStorage2 | Erforderlich. |
IMDSPStorage2::GetAttributes2 | Erforderlich. |
IMDSPStorage2::GetStorage | Optional. |
IMDSPStorage2::SetAttributes2 | Optional. |
IMDSPStorage3-Schnittstelle | Optional. Wenn der Geräteparameter UseMetadataViews jedoch auf 1 festgelegt ist, muss diese Schnittstelle implementiert werden, und IMDSPStorage3::GetMetadata wird obligatorisch, obwohl IMDSPStorage3::SetMetadata weiterhin optional ist. |
IMDSPStorageGlobals::GetCapabilities | Erforderlich. |
IMDSPStorageGlobals::GetDevice | Erforderlich. |
IMDSPStorageGlobals::GetRootStorage | Erforderlich. |
IMDSPStorageGlobals::GetSerialNumber | Nur für PDDRM obligatorisch. Andernfalls optional. |
IMDSPStorageGlobals::GetStatus | Erforderlich. |
IMDSPStorageGlobals::GetTotalBad | Erforderlich. |
IMDSPStorageGlobals::GetTotalFree | Erforderlich. |
IMDSPStorageGlobals::GetTotalSize | Erforderlich. |
IMDSPStorageGlobals::Initialize | Optional. Diese Methode sollte implementiert werden, wenn das Gerät diese Funktionalität unterstützt. Wenn diese Methode nicht implementiert ist, muss IMDSPStorageGlobals::GetCapabilites zusätzlich zu allen anderen Flags WMDM_STORAGECAP_NOT_INITIALIZABLE zurückgeben. |
IMDSPDevice3IMDSPObject2 IMDSPStorage4 |
Erforderlich, um die automatische Synchronisierung mit Windows Medienwiedergabe zu unterstützen |