次の方法で共有


必須インターフェイスと省略可能なインターフェイス

次の表では、サービス プロバイダーが実装する必須およびオプションのインターフェイスとメソッドについて説明します。 1 つ以上の必須メソッドを持つすべてのインターフェイスを実装する必要があります。 必須メソッドは、WMDM_E_NOTSUPPORTEDまたはE_NOTIMPLを返すことができません。

インターフェイスとメソッド 実装オプション
IMDServiceProvider::EnumDevices 必須。
IMDServiceProvider::GetDeviceCount 必須。
IMDServiceProvider2::CreateDevice 随意。 このメソッドは、PnP および Windows エクスプローラーのサポートのために実装する必要があります。
IMDSPDevice::EnumStorage 必須。
IMDSPDevice::GetDeviceIcon 必須。
IMDSPDevice::GetFormatSupport 必須。
IMDSPDevice::GetManufacturer 必須。
IMDSPDevice::GetName 必須。
IMDSPDevice::GetPowerSource 随意。
IMDSPDevice::GetSerialNumber 随意。 保護されたコンテンツ転送の場合、Windows Media Device Manager は IMDSPStorageGlobals::GetSerialNumber を使用します。
IMDSPDevice::GetStatus 必須。
IMDSPDevice::GetType 必須。
IMDSPDevice::GetVersion 随意。
IMDSPDevice::SendOpaqueCommand 随意。
IMDSPDevice2::GetCanonicalName 随意。
IMDSPDevice2::GetFormatSupport2 必須。
IMDSPDevice2::GetSpecifyPropertyPages 随意。
IMDSPDevice2::GetStorage 随意。
IMDSPDeviceControl インターフェイス 随意。
IMDSPEnumDevice::Clone 必須。
IMDSPEnumDevice::Next 必須。
IMDSPEnumDevice::Reset 必須。
IMDSPEnumDevice::Skip 必須。
IMDSPEnumStorage::Clone 必須。
IMDSPEnumStorage::Next 必須。
IMDSPEnumStorage::Reset 必須。
IMDSPEnumStorage::Skip 必須。
IMDSPObject::Close 必須。
IMDSPObject::D elete 必須。
IMDSPObject::Move 随意。
IMDSPObject::Open 必須。
IMDSPObject::Read 必須 (Windows Media Player のサポートが必要な場合)。
IMDSPObject::Rename 随意。
IMDSPObject::Seek 随意。
IMDSPObject::Write 必須。
IMDSPObjectInfo インターフェイス 随意。
IMDSPRevoked インターフェイス 随意。
IMDSPStorage::CreateStorage dwAttributes がWMDM_FILE_ATTR_FILEされている場合にのみ必須です。
IMDSPStorage::EnumStorage 必須。
IMDSPStorage::GetAttributes 必須。
IMDSPStorage::GetDate 必須。
IMDSPStorage::GetName 必須。
IMDSPStorage::GetRights 随意。
IMDSPStorage::GetSize 必須。
IMDSPStorage::GetStorageGlobals 必須。
IMDSPStorage::SendOpaqueCommands 随意。
IMDSPStorage::SetAttributes 随意。
IMDSPStorage2::CreateStorage2 必須。
IMDSPStorage2::GetAttributes2 必須。
IMDSPStorage2::GetStorage 随意。
IMDSPStorage2::SetAttributes2 随意。
IMDSPStorage3 インターフェイス 随意。 ただし、UseMetadataViews デバイス パラメーターが 1 に設定されている場合は、このインターフェイスを実装する必要があります。IMDSPStorage3::GetMetadata は必須になりますが、IMDSPStorage3::SetMetadata はまだ省略可能です。
IMDSPStorageGlobals::GetCapabilities 必須。
IMDSPStorageGlobals::GetDevice 必須。
IMDSPStorageGlobals::GetRootStorage 必須。
IMDSPStorageGlobals::GetSerialNumber PDDRM の場合のみ必須です。 それ以外の場合は省略可能。
IMDSPStorageGlobals::GetStatus 必須。
IMDSPStorageGlobals::GetTotalBad 必須。
IMDSPStorageGlobals::GetTotalFree 必須。
IMDSPStorageGlobals::GetTotalSize 必須。
IMDSPStorageGlobals::Initialize 随意。 デバイスがこの機能をサポートしている場合は、このメソッドを実装する必要があります。 このメソッドが実装されていない場合、IMDSPStorageGlobals::GetCapabilites は、他のフラグに加えてWMDM_STORAGECAP_NOT_INITIALIZABLEを返す必要があります。
IMDSPDevice3IMDSPObject2
IMDSPStorage4
Windows Media Player との自動同期をサポートするために必要

サービス プロバイダー の作成