Aquisição de licença silenciosa

[O recurso associado a esta página, Windows Media Format 11 SDK, é um recurso herdado. Ele foi substituído por Leitor de Origem e Gravador de Coletor. O Leitor de Origem e o Gravador do Coletor foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use o Leitor de Origem e o Gravador do Coletor em vez do SDK do Windows Media Format 11, quando possível. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]

A aquisição silenciosa de licença requer apenas uma única chamada de método que manipula todas as comunicações de rede com o servidor de licença de forma assíncrona.

Esse tipo de aquisição de licença geralmente é usado como uma resposta ao usuário final tentando acessar o conteúdo protegido, por exemplo, tentando reproduzir um arquivo protegido em um aplicativo de player de mídia. Como a aquisição silenciosa de licença obtém a licença com uma única chamada, ela não poderá ser usada se a entrada adicional do usuário, como o pagamento pelo conteúdo, for necessária.

Para executar a aquisição silenciosa de licença, use as seguintes etapas:

  1. Chame o método IWMDRMLicenseManagement::AcquireLicense . Passe o cabeçalho DRM do arquivo protegido como o parâmetro bstrHeaderData . Especifique quais direitos você deseja que a licença conceda no parâmetro bstrActions . Por fim, defina o parâmetro dwFlags como WMDRM_ACQUIRE_LICENSE_SILENT.
  2. Interceptar eventos para a interface IWMDRMLicenseManagement . Quando você recebe o evento MEWMDRMLicenseAcquisitionCompleted, marcar seu código de retorno chamando o método IMFMediaEvent::GetStatus, documentado na documentação da Media Foundation. Se o valor HRESULT recuperado for um código de êxito, a licença foi baixada com êxito e está no repositório de licenças local pronto para uso.

Adquirindo licenças

Usando o modelo de evento do Media Foundation