Приобретение лицензий без автоматической активации
[Функция, связанная с этой страницей, пакет SDK для Windows Media 11, является устаревшей функцией. Он был заменен средства чтения источника и записи приемника. средства чтения источников и записи приемника оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует использовать новый код средства чтения исходного кода и записи приемников вместо пакета SDK для Windows Media 11, когда это возможно. Корпорация Майкрософт предлагает, что существующий код, использующий устаревшие API, будет перезаписан для использования новых API, если это возможно.]
Приобретение лицензий без автоматического доступа позволяет поставщику лицензий взаимодействовать с конечным пользователем через веб-страницу в качестве промежуточного шага процесса приобретения лицензий. Приобретение лицензий без автоматической активации инициируется в ответ на попытку пользователя получить доступ к защищенному содержимому.
Чтобы выполнить приобретение лицензий без автоматического использования, выполните следующие действия.
- Вызовите метод IWMDRMLicenseManagement::AcquireLicense. Передайте заголовок DRM из защищенного файла в качестве параметра bstrHeaderData. Укажите права, которые требуется предоставить лицензии в параметре bstrActions. Наконец, задайте для параметра dwFlags значение WMDRM_ACQUIRE_LICENSE_NONSILENT.
- Перехват событий для интерфейса IWMDRMLicenseManage ment. При получении события MEWMDRMLicenseAcquisitionCompleted получите связанное значение путем вызова IMFMediaEvent::GetValue. Значение должно иметь тип VT_UNKNOWN, указатель на интерфейс IUnknown.
- Вызовите метод QueryInterface интерфейса IUnknown, полученного на шаге 2, чтобы получить интерфейс IWMDRMNonSilentLicenseAquisition.
- Вызовите IWMDRMNonSilentLicenseAquisition::GetChallenge, чтобы получить проблему лицензии. Также вызовите IWMDRMNonSilentLicenseAquisition::GetURL, если у вас еще нет URL-адреса сервера лицензирования.
- Отправьте запрос на веб-страницу, указанную URL-адресом.
Связанные разделы