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