Interfaces para provedores de serviços
Esta seção descreve as interfaces implementadas pelos provedores de serviços do Windows Media Gerenciador de Dispositivos. Os provedores de serviços executam a maior parte do trabalho real de comunicação com um dispositivo, pois implementam a maioria dos métodos do SDK do Windows Media Gerenciador de Dispositivos chamados pelo aplicativo.
Os provedores de serviços não precisam implementar todas as interfaces listadas nesta seção. Por exemplo, um dispositivo de mídia que não tem armazenamento a bordo não implementa as interfaces usadas para controlar ou expor o conteúdo. Se um método ou interface é necessário é indicado na página de referência apropriada.
Interface ou classe | Descrição |
---|---|
CSecureChannelServer | Uma classe auxiliar que permite que um provedor de serviços ou um provedor de conteúdo seguro autentique um aplicativo e crie assinaturas MAC para parâmetros seguros. |
IMDServiceProvider | Fornece ao cliente (geralmente Windows Media Gerenciador de Dispositivos) um enumerador de dispositivo para os dispositivos aos quais esse provedor de serviços dá suporte. |
IMDServiceProvider2 | Estende IMDServiceProvider fornecendo um método para criar o dispositivo usando o caminho do dispositivo. |
IMDServiceProvider3 | Estende IMDServiceProvider2 fornecendo um método para definir as preferências de enumeração do dispositivo. |
IMDSPDevice | Fornece uma associação baseada em instância com um dispositivo de mídia. Usando essa interface, o cliente pode enumerar os enumeradores de mídia de armazenamento para o dispositivo, obter informações sobre o dispositivo e enviar comandos opacos (passagem) para o dispositivo. |
IMDSPDevice2 | Estende O IMDSPDevice fornecendo métodos para obter formatos de vídeo estendidos, obtendo nomes de dispositivo Plug and Play (PnP), habilitando o uso de páginas de propriedades e possibilitando obter um ponteiro para um meio de armazenamento de seu nome. Essa interface é opcional para o provedor de serviços, mas é recomendada. |
IMDSPDevice3 | Estende IMDSPDevice2 fornecendo a capacidade de consultar propriedades e funcionalidades do dispositivo em relação a um formato de objeto. |
IMDSPDeviceControl | Fornece métodos para controlar dispositivos. |
IMDSPDirectTransfer | Habilita a Gerenciador de Dispositivos do Windows Media para delegar a transferência de conteúdo para o provedor de serviços. Nesse caso, o Windows Media Gerenciador de Dispositivos não faz nenhum processamento do conteúdo antes de enviá-lo ao provedor de serviços. O provedor de serviços obtém o controle total da origem. |
IMDSPEnumDevice | Enumera os dispositivos de mídia compatíveis com esse provedor de serviços. |
IMDSPEnumStorage | Enumera a mídia de armazenamento em um dispositivo e o conteúdo em um meio de armazenamento. |
IMDSPObject | Contém métodos para operações de transferência de dados em um objeto de armazenamento. |
IMDSPObject2 | Estende O IMDSPObject fornecendo uma transmissão mais eficiente de dados habilitados para DRM. |
IMDSPObjectInfo | Define ou obtém comprimento de jogo, posição de reprodução, deslocamento de reprodução ou comprimento total de objetos reproduzíveis em um meio de armazenamento. |
IMDSPRevoked | Recupera a URL da qual os componentes atualizados podem ser baixados. |
IMDSPStorage | Fornece uma associação baseada em instâncias com um meio de armazenamento em um dispositivo. Essa interface cria objetos de armazenamento, recupera informações sobre eles e fornece acesso à interface IMDSPEnumStorage para enumerar subpastas aninhadas no armazenamento atual. |
IMDSPStorage2 | Estende o IMDSPStorage obtendo e definindo atributos estendidos e possibilitando obter um ponteiro para o armazenamento a partir de seu nome. |
IMDSPStorage3 | Estende O IMDSPStorage2 dando suporte a metadados. |
IMDSPStorage4 | Estende O IMDSPStorage3 dando suporte a objetos de playlist. |
IMDSPStorageGlobals | Recupera informações globais sobre um meio de armazenamento, como a quantidade de espaço livre e o número total de arquivos. |
O diagrama a seguir mostra como obter as várias interfaces implementadas por um provedor de serviços. Neste diagrama, interfaces derivadas são exibidas na mesma marca para compactação, portanto, IMDServiceProvider/2/3 representaria três interfaces: IMDServiceProvider, IMDServiceProvider2 e IMDServiceProvider3. Os métodos mostrados são estendidos por apenas uma dessas interfaces. Interfaces derivadas são obtidas chamando QueryInterface na interface base do objeto criado.
Tópicos relacionados