次の方法で共有


必須とオプションのインターフェイス

次の表では、サービス プロバイダーが実装する必須および省略可能なインターフェイスとメソッドについて説明します。 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 デバイス マネージャーは 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 メディア プレーヤーサポートが必要な場合)。
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 メディア プレーヤーとの自動同期をサポートするために必要です

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