Что означает код HRESULT 0xC00D11DD (NS_E_WMP_DRM_INDIV_FAILED)?

 
Предыдущий Следующий
NS_E_WMP_DRM_NO_RIGHTS NS_E_WMP_SERVER_NONEWCONNECTIONS

NS_E_WMP_DRM_INDIV_FAILED

Почему важен символьный результат

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

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

Задействованные объекты

Не отделяйте NS_E_WMP_DRM_INDIV_FAILED от состояния ответственного компонента: KID и заголовка содержимого, записи хранилища лицензий, запрошенного действия, URL получения прав, контекста пользователя/хранилища, защищённых часов и поколения компонентов DRM. Диагностическая запись для NS_E_WMP_DRM_INDIV_FAILED — KID содержимого, запрошенное действие, запрос состояния лицензии, последовательность обратных вызовов получения, категория ответа сервера и первый нижележащий DRM HRESULT.

Область результата узкая: индивидуализация компонента безопасности DRM проигрывателя не завершилась успешно. Другое содержимое или действия при этом могут оставаться допустимыми.

Первый сбой и последующая очистка

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

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

Причина и последующее состояние

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

Что отличает этот код

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

Последовательность проверки

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

Соседние HRESULT

РезультатПочему он указывает на другую причину
NS_E_WMP_DRM_NO_SECURE_CLOCKзависимой от устройства лицензии требуется доверенное время, но у целевого устройства нет пригодного состояния защищённых часов
NS_E_WMP_DRM_NO_RIGHTSни одно из доступных прав использования медиа не разрешает запрошенную операцию проигрывателя
NS_E_WMP_DRM_COMPONENT_FAILUREвнутренний сбой компонента DRM после того, как проигрыватель выбрал тракт защищённого содержимого

Безопасное восстановление

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

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

Полезный автоматизированный тест

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

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


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