| Предыдущий | Следующий |
| NS_E_DRM_SOURCEID_NOT_SUPPORTED | NS_E_DRM_NEED_UPGRADE_PD |
NS_E_DRM_NEEDS_UPGRADE_TEMPFILE
Значение в активном рабочем процессе
Первый практически значимый факт для NS_E_DRM_NEEDS_UPGRADE_TEMPFILE означает, что ожидающее обновление компонента DRM зависит от временного артефакта обновления, который невозможно использовать ожидаемым образом. Для NS_E_DRM_NEEDS_UPGRADE_TEMPFILE, ответственны внутренние компоненты клиента Windows Media DRM: они инициализируют компоненты безопасности, проверяют содержимое и лицензии, выполняют индивидуализацию и управляют цепочками лицензий.
Расследование становится предметным после выполнения проверки для состояния «ошибка временного файла обновления DRM». Штатное описание AllStat приведено выше; этот раздел посвящён состоянию объекта и данным, позволяющим отличить NS_E_DRM_NEEDS_UPGRADE_TEMPFILE от соседних ошибок Windows Media.
Сохраните исходное поколение
Полный инцидент NS_E_DRM_NEEDS_UPGRADE_TEMPFILE связывает версию компонента DRM, KID, подпись заголовка содержимого, цепочку лицензий, вышестоящую лицензию, состояние индивидуализации, регистрации переносных устройств и локальную конфигурацию; минимальный набор корреляции для NS_E_DRM_NEEDS_UPGRADE_TEMPFILE — KID и хэш заголовка, версия компонента DRM, состояние индивидуализации, идентификаторы цепочки лицензий, результат поиска в реестре/конфигурации и первый обратный вызов клиента, сообщивший об ошибке.
Формирующий слой не делает утверждения обо всех мультимедийных операциях; установлено только, что ожидающее обновление компонента DRM зависит от временного артефакта обновления, который невозможно использовать ожидаемым образом.
Что остаётся неизвестным
Для NS_E_DRM_NEEDS_UPGRADE_TEMPFILE, установленный факт состоит в том, что ожидающее обновление компонента DRM зависит от временного артефакта обновления, который невозможно использовать ожидаемым образом. Для NS_E_DRM_NEEDS_UPGRADE_TEMPFILEэтот факт сам по себе не доказывает повреждение медиаданных, отсутствие декодера, общий сетевой сбой или недействительность прав для всех остальных действий.
Если Player, кодировщик, программа установки или уровень устройства позднее выдаёт более общую ошибку, сохраните NS_E_DRM_NEEDS_UPGRADE_TEMPFILE как первый конкретный результат. Объект и операция, связанные с NS_E_DRM_NEEDS_UPGRADE_TEMPFILE , обычно диагностически ценнее более позднего результата очистки или сводного сообщения интерфейса.
Модель сбоя
Сравнение состояния до и после для NS_E_DRM_NEEDS_UPGRADE_TEMPFILE имеет одну контролируемую переменную. До исправления ожидающее обновление компонента DRM зависит от временного артефакта обновления, который невозможно использовать ожидаемым образом; после исправления тот же процесс может повторно выполнить поддерживаемое обновление компонента с доступным для записи временным хранилищем. Сохранение перехода NS_E_DRM_NEEDS_UPGRADE_TEMPFILE также показывает, использовала ли повторная попытка устаревшее состояние или действительно повторно оценила исправленные входные данные.
Диагностический перечень
| Поле | Значение для NS_E_DRM_NEEDS_UPGRADE_TEMPFILE |
|---|---|
| Результат нижнего уровня | самый ранний статус хранилища, сети, криптографического компонента, драйвера или поставщика перед итоговой оболочкой NS_E_DRM_NEEDS_UPGRADE_TEMPFILE |
| Владелец | операция, API или обратный вызов, идентификатор объекта или сеанса и версия компонента или устройства, связанные с NS_E_DRM_NEEDS_UPGRADE_TEMPFILE |
| Прямая проверка | этап обновления, путь/хэш временного файла и версию компонента |
| Входные данные политики | запрошенное действие и точное свойство лицензии, сертификата, профиля, выхода или регистрации, проверяемое при NS_E_DRM_NEEDS_UPGRADE_TEMPFILE |
| Временное состояние | доверенное или системное время, интервал действия, последовательность запросов и номер повторной попытки, если они влияют на NS_E_DRM_NEEDS_UPGRADE_TEMPFILE |
Подтверждение границы
- Сохраните
NS_E_DRM_NEEDS_UPGRADE_TEMPFILEи0xC00D283Dдо очистки, перехода к резервному пути или смены контекста другим медиаэлементом. - Примените узкое исправление для
NS_E_DRM_NEEDS_UPGRADE_TEMPFILEповторно выполните поддерживаемое обновление с доступным для записи временным хранилищем. - Свяжите
NS_E_DRM_NEEDS_UPGRADE_TEMPFILEс текущим объектом внутренних компонентов клиента Windows Media DRM и запрошенным действием. - Выполните прямую проверку для
NS_E_DRM_NEEDS_UPGRADE_TEMPFILE: зафиксируйте этап обновления, путь/хэш временного файла и версию компонента. - Сравните сбой с заведомо рабочим случаем, изменив только свойство, указанное этим условием: ожидающее обновление компонента DRM зависит от временного артефакта обновления, который невозможно использовать ожидаемым образом.
- Повторите то же действие с тем же содержимым и идентификатором устройства и убедитесь, что
NS_E_DRM_NEEDS_UPGRADE_TEMPFILEне заменена другой ошибкой политики или доверия.
Сравнение соседних состояний
| Результат | Почему он указывает на другую причину |
|---|---|
NS_E_DRM_LICENSE_NOTRUSTEDCODEC | кодек, выбранный для защищённого содержимого, не соответствует требованию лицензии к доверию |
NS_E_DRM_SOURCEID_NOT_SUPPORTED | идентификатор источника лицензии/содержимого требует возможности клиента, не реализованной в этой версии DRM |
NS_E_DRM_NEED_UPGRADE_PD | компоненты DRM переносного устройства требуют более новой версии, прежде чем защищённая передача сможет продолжиться |
Практические действия
Следующая попытка имеет смысл только после точечного исправления: повторно выполните поддерживаемое обновление с доступным для записи временным хранилищем. Для NS_E_DRM_NEEDS_UPGRADE_TEMPFILEуспех означает принятие того же запрошенного действия после этого точного изменения состояния, а не просто работу другого файла или устройства.
NS_E_DRM_NEEDS_UPGRADE_TEMPFILEлегко уничтожить; не заменяйте двоичные файлы DRM и не изменяйте состояние реестра до записи их версий и подписей, иначе несовместимость компонента нельзя будет отличить от повреждённого объекта лицензии.- Не изменяйте доверенное время, контроль отзыва, проверку сертификатов или политику выхода только ради подавления
NS_E_DRM_NEEDS_UPGRADE_TEMPFILE; это обходит решение, а не исправляет его входные данные. - Сохраните один сбойный и один исправленный артефакт, чтобы устранение
NS_E_DRM_NEEDS_UPGRADE_TEMPFILEможно было проверять при регрессионном тестировании.
Подтверждение того же рабочего процесса
В итоговом тесте NS_E_DRM_NEEDS_UPGRADE_TEMPFILE по возможности оставьте неизменными KID содержимого или хэш файла, запрошенное действие, пользователя или учётную запись, идентификатор устройства и маршрут выхода. Случай NS_E_DRM_NEEDS_UPGRADE_TEMPFILE разрешён только тогда, когда операция завершается без этого HRESULT и без замещающей ошибки соседней проверки лицензии, доверия, сеанса или политики.
Технические ссылки для NS_E_DRM_NEEDS_UPGRADE_TEMPFILE
- Интерфейсы клиента Windows Media DRM — определяет объекты платформы, используемые при диагностике NS_E_DRM_NEEDS_UPGRADE_TEMPFILE.
- Возможности управления цифровыми правами — документирует границу протокола или API, связанную с NS_E_DRM_NEEDS_UPGRADE_TEMPFILE.
- Лицензии и локальное хранилище лицензий — описывает нормативный рабочий процесс, относящийся к NS_E_DRM_NEEDS_UPGRADE_TEMPFILE.
- Коды ошибок Windows Media Format SDK — перечисляет переходы безопасности и состояния, используемые при интерпретации NS_E_DRM_NEEDS_UPGRADE_TEMPFILE.
Нужно найти другой код? Найти другой код состояния или ошибки.