Aquisição de licença não 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 de 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 de 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 de licença não silenciosa permite que o provedor de licença interaja com o usuário final por meio de uma página da Web, como uma etapa intermediária no processo de aquisição de licenças. A aquisição de licença não silenciosa é iniciada em resposta a um usuário que tenta acessar o conteúdo protegido.
Para executar a aquisição de licença não silenciosa, use as seguintes etapas:
- 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_NONSILENT.
- Capturar eventos para a interface IWMDRMLicenseManagement . Quando você receber o evento MEWMDRMLicenseAcquisitionCompleted , obtenha seu valor associado chamando IMFMediaEvent::GetValue. O valor deve ser do tipo VT_UNKNOWN, um ponteiro para uma interface IUnknown .
- Chame o método QueryInterface da interface IUnknown recuperada na etapa 2 para obter a interface IWMDRMNonSilentLicenseAquisition .
- Chame IWMDRMNonSilentLicenseAquisition::GetChallenge para recuperar o desafio de licença. Chame também IWMDRMNonSilentLicenseAquisition::GetURL se você ainda não tiver a URL do servidor de licença.
- Envie o desafio para a página da Web especificada pela URL.
Tópicos relacionados