Что означает код HRESULT 0xC00D11A9 (NS_E_WMP_WMDM_NORIGHTS)?

 
Предыдущий Следующий
NS_E_WMP_WMDM_BUSY NS_E_WMP_WMDM_INCORRECT_RIGHTS

NS_E_WMP_WMDM_NORIGHTS

Определите нарушенный контракт

NS_E_WMP_WMDM_NORIGHTS следует сохранить как первичный результат, когда защищённый элемент не предоставляет ни одного права на синхронизацию с выбранным устройством. В подсистеме защищённой передачи на портативные устройства Этот результат возникает при взаимодействии Windows Media Player и Windows Media Device Manager с приложением, поставщиком защищённого содержимого и поставщиком службы устройства во время синхронизации защищённого файла.

Сначала запросите права передачи и ограничения по классу устройства именно для этого элемента. Штатное описание AllStat приведено выше; здесь важны состояние объектов и признаки, позволяющие отделить NS_E_WMP_WMDM_NORIGHTS от соседних ошибок Windows Media.

Свидетельства одной операции

Решение зависит от идентичности портативного устройства, защищённого канала WMDM, сертификата передачи, флагов DRM-возможностей устройства, защищённых часов, лицензии содержимого и транзакции передачи. Для одной попытки сохраните firmware и provider устройства, флаги capabilities/status WMDM, результат аутентификации защищённого канала, права синхронизации и состояние завершения передачи.

Последующая общая ошибка не должна затереть первичный факт: защищённый элемент не предоставляет права, разрешающего синхронизацию с выбранным устройством.

Обоснованная проверка

  1. Сохраните этот HRESULT и 0xC00D11A9 до очистки, перехода к резервному пути или смены контекста другим медиаэлементом.
  2. Сравните с заведомо исправным случаем, меняя только указанное условие: для элемента должно существовать право передачи на выбранный класс устройства.
  3. Примените узкое исправление для этого результата: удалите элемент либо получите лицензию, разрешающую передачу на устройство.
  4. Свяжите этот результат с текущим объектом защищённой передачи содержимого на переносные устройства и запрошенным действием.
  5. Выполните прямую проверку для этого результата: запросите права передачи и ограничения по классу устройства для конкретного элемента.
  6. Повторите то же действие с тем же содержимым и идентификатором устройства и убедитесь, что NS_E_WMP_WMDM_NORIGHTS не заменена другой ошибкой политики или доверия.

Смоделируйте отклонённую предпосылку

Документируя этот результат, указывайте отклонённый вход и ожидаемое следующее состояние. Отсутствие права подтверждается запросом прав передачи и ограничений класса устройства; следующий этап станет доступен после удаления элемента либо получения лицензии, разрешающей передачу. Для этого результата используйте заведомо исправный аналог только как контрольный случай; не заменяйте сбойный материал до фиксации его идентификаторов и хэшей.

Избегайте ложного вывода

Для этого результата установлено только то, что защищённый элемент не предоставляет права синхронизации с выбранным устройством. Для этого результата сам по себе этот факт не доказывает повреждение медиаданных, отсутствие декодера, общий сетевой сбой или недействительность прав для всех остальных действий.

Если Player, кодировщик, программа установки или уровень устройства позднее выдаёт более общую ошибку, сохраните этот HRESULT как первый конкретный результат. Объект и операция, связанные с этим результатом, обычно диагностически ценнее более позднего результата очистки или сводного сообщения интерфейса.

Данные одной попытки

ПолеЗначение для этого результата
Владелецоперация, API или обратный вызов, идентификатор объекта или сеанса и версия компонента или устройства, связанные с этим результатом
Прямая проверказапросите права передачи и ограничения по классу устройства для конкретного элемента
Входные данные политикизапрошенное действие и точное свойство лицензии, сертификата, профиля, выхода или регистрации, проверяемое при получении этого результата
Временное состояниедоверенное или системное время, интервал действия, последовательность запросов и номер повторной попытки, если они влияют на результат
Результат нижнего уровнясамый ранний статус хранилища, сети, криптографического компонента, драйвера или поставщика перед итоговым HRESULT

Другие границы того же семейства

РезультатПочему он указывает на другую причину
NS_E_WMP_WMDM_LICENSE_EXPIREDправо передачи на устройство истекло, даже если другое действие, например локальное воспроизведение, всё ещё разрешено
NS_E_WMP_WMDM_BUSYтракт передачи на переносное устройство сейчас занят другим клиентом или операцией
NS_E_WMP_WMDM_INCORRECT_RIGHTSЗафиксируйте значение, относящееся к условию «WMDM вернул ошибку DRM при подготовке или передаче защищённого элемента», и сравните его с заведомо рабочим случаем.

Проверка исправления

Исправьте владельца проверки: удалите элемент либо получите лицензию, разрешающую передачу на устройство. Для этого результата успех означает принятие того же запрошенного действия после этого точного изменения состояния, а не просто работу другого файла или устройства.

  • NS_E_WMP_WMDM_NORIGHTS: не преобразовывайте и не копируйте защищённый файл вне защищённого тракта передачи ради упрощения диагностики — это проверяет другую модель прав и может израсходовать или сделать недействительными диагностические данные.
  • Не изменяйте доверенное время, контроль отзыва, проверку сертификатов или политику выхода только ради подавления этого результата; это обходит решение, а не исправляет его входные данные.
  • Сохраните один сбойный и один исправленный артефакт, чтобы устранение этого результата можно было проверять при регрессионном тестировании.

Проверяйте, не меняя исходный вопрос

В итоговом тесте по возможности оставьте неизменными KID содержимого или хэш файла, запрошенное действие, пользователя или учётную запись, идентификатор устройства и маршрут выхода. Этот случай разрешён только тогда, когда операция завершается без этого HRESULT и без замещающей ошибки соседней проверки лицензии, доверия, сеанса или политики.

Технические ссылки для этого результата


Нужно найти другой код? Найти другой код состояния или ошибки.