| Предыдущий | Следующий |
| NS_E_WMP_DRM_LICENSE_NOSAP | NS_E_WMP_LICENSE_REQUIRED |
NS_E_WMP_DRM_UNABLE_TO_ACQUIRE_LICENSE
Точная граница DRM
Этот HRESULT указывает на конкретное условие: Этот результат возникает потому, что проигрыватель не смог завершить транзакцию получения лицензии в текущий момент. Подсистема, формирующая NS_E_WMP_DRM_UNABLE_TO_ACQUIRE_LICENSE — это подсистема обработки прав Windows Media Player, а не медиадекодер; она открывает защищённые медиафайлы, проверяет состояние локальной лицензии, выполняет фоновое или интерактивное получение прав, проверяет компоненты DRM и применяет ограничения на воспроизведение, запись и синхронизацию.
Используйте саму неудачную операцию, чтобы раздельно проверить DNS/TLS/HTTP, взаимодействие с пользователем, отказ издателя и локальную установку. Стандартное описание AllStat уже приведено выше; здесь рассматриваются состояние объекта и данные, необходимые, чтобы отличить NS_E_WMP_DRM_UNABLE_TO_ACQUIRE_LICENSE от соседних ошибок Windows Media.
Что следует записать в журнал
Для диагностики важны KID и заголовок содержимого, запись хранилища лицензий, запрошенное действие, URL получения лицензии, контекст пользователя и хранилища, защищённые часы и версия компонентов DRM. Сопоставьте KID содержимого, запрошенное действие, результат запроса состояния лицензии, последовательность callback при получении, категорию ответа сервера и первый нижележащий HRESULT DRM.
Слой, сформировавший результат, ничего не утверждает обо всех медиаоперациях; установлено только то, что проигрыватель не смог завершить транзакцию получения лицензии в текущий момент.
Порядок диагностики
- Сохраните этот HRESULT и
0xC00D1209до очистки, перехода к резервному пути или смены контекста другим медиаэлементом. - Сравните сбой с заведомо исправным случаем, изменив только этап, на котором не завершилось получение лицензии.
- Примените узкое исправление для этого результата: исправьте сбойный этап и повторите получение лицензии с тем же KID содержимого.
- Свяжите этот результат с его текущим объектом обработки прав Windows Media Player и запрошенным действием.
- Выполните прямую проверку для этого результата: раздельно проверьте DNS/TLS/HTTP, взаимодействие с пользователем, отказ издателя и локальную установку.
- Повторите то же действие с тем же содержимым и идентификатором устройства и убедитесь, что
NS_E_WMP_DRM_UNABLE_TO_ACQUIRE_LICENSEне заменена другой ошибкой политики или доверия.
Ожидаемое изменение состояния
NS_E_WMP_DRM_UNABLE_TO_ACQUIRE_LICENSE следует рассматривать как невыполненное предварительное условие, а не произвольную медиаошибку. Подтвердите его, раздельно проверив DNS/TLS/HTTP, взаимодействие с пользователем, отказ издателя и локальную установку; устраните причину на сбойном этапе и повторите получение лицензии с тем же KID содержимого. Сохранение исходного HRESULT также показывает, использовала ли повторная попытка устаревшее состояние или действительно повторно оценила исправленные входные данные.
Область действия и последствия
Для этого результата установленный факт состоит в том, что проигрыватель не смог завершить транзакцию получения лицензии в текущий момент. Для этого результата сам по себе этот факт не доказывает повреждение медиаданных, отсутствие декодера, общий сетевой сбой или недействительность прав для всех остальных действий.
Если Player, кодировщик, программа установки или уровень устройства позднее выдаёт более общую ошибку, сохраните этот HRESULT как первый конкретный результат. Объект и операция, связанные с этим результатом, обычно диагностически ценнее более позднего результата очистки или сводного сообщения интерфейса.
Поля воспроизводимого отчёта
| Поле | Значение для этого результата |
|---|---|
| Результат нижнего уровня | самый ранний статус хранилища, сети, криптографического компонента, драйвера или поставщика перед итоговым HRESULT |
| Владелец | операция, API или обратный вызов, идентификатор объекта или сеанса и версия компонента или устройства, связанные с этим результатом |
| Прямая проверка | раздельно проверьте DNS/TLS/HTTP, взаимодействие с пользователем, отказ издателя и локальную установку |
| Входные данные политики | запрошенное действие и точное свойство лицензии, сертификата, профиля, выхода или регистрации, проверяемое при получении этого результата |
| Временное состояние | доверенное или системное время, интервал действия, последовательность запросов и номер повторной попытки, если они влияют на результат |
Связанные коды с другими контрактами
| Результат | Почему он указывает на другую причину |
|---|---|
NS_E_WMP_DRM_LICENSE_CONTENT_REVOKED | издатель отозвал разрешение для защищённого содержимого или лицензии |
NS_E_WMP_DRM_LICENSE_NOSAP | среда проигрывателя не может предоставить Secure Audio Path, требуемый лицензией |
NS_E_WMP_LICENSE_REQUIRED | проигрыватель не нашёл прав использования медиа для запрошенного воспроизведения, записи или синхронизации |
Измените отклонённое предусловие
Соответствующее исправление — устранить сбой на этом этапе и повторить получение лицензии с тем же KID содержимого. Для этого результата успех означает принятие того же запрошенного действия после этого точного изменения состояния, а не просто работу другого файла или устройства.
NS_E_WMP_DRM_UNABLE_TO_ACQUIRE_LICENSE: не сбрасывайте локальное хранилище DRM до сохранения KID содержимого и результата состояния лицензии: сброс может превратить точный сбой прав или подписи в общее отсутствие лицензии.- Не изменяйте доверенное время, контроль отзыва, проверку сертификатов или политику выхода только ради подавления этого результата; это обходит решение, а не исправляет его входные данные.
- Сохраните один сбойный и один исправленный артефакт, чтобы устранение этого результата можно было проверять при регрессионном тестировании.
Критерий закрытия
В итоговом тесте по возможности оставьте неизменными KID содержимого или хэш файла, запрошенное действие, пользователя или учётную запись, идентификатор устройства и маршрут выхода. Этот случай разрешён только тогда, когда операция завершается без этого HRESULT и без замещающей ошибки соседней проверки лицензии, доверия, сеанса или политики.
Технические ссылки для этого результата
- Обзор Windows Media DRM — перечисляет переходы безопасности и состояния, используемые при интерпретации этого результата.
- Получение лицензий — определяет объекты платформы, используемые при диагностике этого результата.
- Лицензии и локальное хранилище лицензий — документирует границу протокола или API, связанную с этим результатом.
- Коды ошибок Windows Media Format SDK — описывает нормативный рабочий процесс, относящийся к этому случаю.
Нужно найти другой код? Найти другой код состояния или ошибки.
