共用方式為


服務提供者的介面

本節說明 Windows 媒體設備管理器服務提供者所實作的介面。 服務提供者會執行與裝置通訊的大部分實際工作,因為它們會實作應用程式所呼叫的大部分 Windows 媒體設備管理器 SDK 方法。

服務提供者不需要實作本節中列出的所有介面。 例如,沒有內建記憶體的媒體裝置不會實作用來控制或公開內容的介面。 在適當的參考頁面上指出是否需要方法或介面。

介面或類別 描述
CSecureChannelServer 協助程式類別,可讓服務提供者或安全內容提供者驗證應用程式,並建立安全參數的 MAC 簽章。
IMDServiceProvider 為用戶端(通常是 Windows 媒體設備管理員)提供此服務提供者支援的裝置列舉值。
IMDServiceProvider2 藉由提供使用裝置路徑建立裝置的方法,擴充 IMDServiceProvider
IMDServiceProvider3 藉由提供設定裝置列舉喜好設定的方法,擴充 IMDServiceProvider2
IMDSPDevice 提供與媒體裝置的實例型關聯。 使用此介面,用戶端可以列舉裝置的儲存媒體列舉值、取得裝置的相關信息,以及將不透明(傳遞)命令傳送至裝置。
IMDSPDevice2 藉由提供取得擴充視訊格式、取得隨插即用 (PnP) 裝置名稱、啟用屬性頁的使用,以及從其名稱取得儲存媒體的指標,藉此擴充 IMDSPDevice。 此介面是服務提供者的選擇性介面,但建議使用。
IMDSPDevice3 藉由提供查詢裝置屬性與物件格式的功能,來擴充 IMDSPDevice2
IMDSPDeviceControl 提供控制裝置的方法。
IMDSPDirectTransfer 可讓 Windows 媒體設備管理員將內容傳輸委派給服務提供者。 在此情況下,Windows 媒體設備管理員不會在傳送內容給服務提供者之前,對內容進行任何處理。 服務提供者會取得來源的完整控制權。
IMDSPEnumDevice 列舉此服務提供者所支援的媒體裝置。
IMDSPEnumStorage 列舉裝置上的儲存媒體,以及儲存媒體上的內容。
IMDSPObject 包含記憶體對象上數據傳輸作業的方法。
IMDSPObject2 藉由提供啟用DRM的數據更有效率的傳輸,擴充 IMDSPObject
IMDSPObjectInfo 設定或取得儲存媒體上可播放物件的播放長度、播放位置、播放位移或總長度。
IMDSPRevoked 擷取可從中下載更新元件的URL。
IMDSPStorage 提供以實例為基礎的關聯與裝置上的儲存媒體。 此介面會建立記憶體物件、擷取其相關信息,並提供存取 IMDSPEnumStorage 介面,以列舉目前記憶體內巢狀子資料夾。
IMDSPStorage2 藉由取得和設定擴充屬性,並從其名稱取得記憶體的指標,以擴充 IMDSPStorage
IMDSPStorage3 藉由支援元數據,擴充 IMDSPStorage2
IMDSPStorage4 藉由支援播放清單對象,擴充 IMDSPStorage3
IMDSPStorageGlobals 擷取儲存媒體的全域資訊,例如可用空間量和檔案總數。

 

下圖顯示如何取得服務提供者實作的各種介面。 在此圖表中,衍生介面會以相同的標籤來顯示,因此 IMDServiceProvider/2/3 代表三個介面:IMDServiceProviderIMDServiceProvider2,以及 IMDServiceProvider3。 顯示的方法只會由其中一個介面擴充。 衍生介面是在所建立物件的基底介面上呼叫 QueryInterface 來取得。

圖表,顯示 Windows 媒體設備管理器預期如何從服務提供者取得介面。

程式設計參考

Windows Media DRM-Implemented 介面