| Предыдущий | Следующий |
| NS_E_CANNOT_PAUSE_LIVEBROADCAST | NS_E_DUPLICATE_DRMPROFILE |
NS_E_DRM_PROFILE_NOT_SET
Определите нарушенный контракт
NS_E_DRM_PROFILE_NOT_SET — результат, который следует сохранять, когда сеанс кодера дошёл до защищённого вывода без привязанного профиля DRM. Подсистема, формирующая NS_E_DRM_PROFILE_NOT_SET — это профили DRM Windows Media Encoder, а не медиадекодер; она обрабатывает конфигурацию сеанса кодера, выбирающую сохранённый профиль DRM и использующую его идентификатор, политику и секрет при упаковке защищённого вывода в реальном времени или из файла.
Наиболее надёжное подтверждение: проверьте конфигурацию сеанса непосредственно перед началом кодирования. Штатное описание AllStat приведено выше; этот раздел посвящён состоянию объекта и данным, позволяющим отличить NS_E_DRM_PROFILE_NOT_SET от соседних ошибок Windows Media.
Свидетельства одной операции
Не рассматривайте NS_E_DRM_PROFILE_NOT_SET отдельно от связанного состояния: сеанса кодирования, идентификатора профиля DRM, хранилища профилей, пароля, выбранной аудитории/вывода и ограничения количества профилей. В диагностической записи для NS_E_DRM_PROFILE_NOT_SET сохраните идентификатор профиля, переданный сеансу, результат перечисления профилей, расположение хранилища профилей, длину пароля и точку, где кодер привязывает профиль.
Эти данные важны, поскольку отклонённое условие состоит именно в следующем: сеанс кодера дошёл до защищённого вывода без привязанного профиля DRM.
Обоснованная проверка
- Сохраните
NS_E_DRM_PROFILE_NOT_SETи0xC00D1B8Fдо очистки, перехода к резервному пути или смены контекста другим медиаэлементом. - Сравните сбой с заведомо исправным случаем, изменив только свойство, указанное этим условием: сеанс кодера дошёл до защищённого вывода без привязанного профиля DRM.
- Примените узкое исправление для
NS_E_DRM_PROFILE_NOT_SETвыберите и привяжите существующий профиль DRM до запуска сеанса. - Свяжите
NS_E_DRM_PROFILE_NOT_SETс текущим объектом профилей DRM Windows Media Encoder и запрошенным действием. - Выполните прямую проверку для
NS_E_DRM_PROFILE_NOT_SET: проверьте конфигурацию сеанса непосредственно перед началом кодирования. - Повторите то же действие с тем же содержимым и идентификатором устройства и убедитесь, что
NS_E_DRM_PROFILE_NOT_SETне заменена другой ошибкой политики или доверия.
Смоделируйте отклонённую предпосылку
Полезная модель сбоя для NS_E_DRM_PROFILE_NOT_SET связывает причину и восстановление: сеанс кодера дошёл до защищённого вывода без привязанного профиля DRM. Проверьте эту модель, исследовав конфигурацию сеанса непосредственно перед началом кодирования, затем внесите минимальное изменение: выберите и привяжите существующий профиль DRM до запуска сеанса. Для NS_E_DRM_PROFILE_NOT_SETиспользуйте заведомо исправный аналог только как контрольный случай; не заменяйте сбойный материал до фиксации его идентификаторов и хэшей.
Избегайте ложного вывода
Для NS_E_DRM_PROFILE_NOT_SET, установленный факт состоит в следующем: Сеанс кодера дошёл до защищённого вывода без привязанного профиля DRM. Для NS_E_DRM_PROFILE_NOT_SETэтот факт сам по себе не доказывает повреждение медиаданных, отсутствие декодера, общий сетевой сбой или недействительность прав для всех остальных действий.
Если Player, кодировщик, программа установки или уровень устройства позднее выдаёт более общую ошибку, сохраните NS_E_DRM_PROFILE_NOT_SET как первый конкретный результат. Объект и операция, связанные с NS_E_DRM_PROFILE_NOT_SET , обычно диагностически ценнее более позднего результата очистки или сводного сообщения интерфейса.
Данные одной попытки
| Поле | Значение для NS_E_DRM_PROFILE_NOT_SET |
|---|---|
| Входные данные политики | запрошенное действие и точное свойство лицензии, сертификата, профиля, выхода или регистрации, проверяемое при NS_E_DRM_PROFILE_NOT_SET |
| Временное состояние | доверенное или системное время, интервал действия, последовательность запросов и номер повторной попытки, если они влияют на NS_E_DRM_PROFILE_NOT_SET |
| Результат нижнего уровня | самый ранний статус хранилища, сети, криптографического компонента, драйвера или поставщика перед итоговой оболочкой NS_E_DRM_PROFILE_NOT_SET |
| Владелец | операция, API или обратный вызов, идентификатор объекта или сеанса и версия компонента или устройства, связанные с NS_E_DRM_PROFILE_NOT_SET |
| Прямая проверка | проверьте конфигурацию сеанса непосредственно перед началом кодирования |
Другие границы того же семейства
| Результат | Почему он указывает на другую причину |
|---|---|
NS_E_DUPLICATE_DRMPROFILE | новый профиль DRM кодера повторно использует идентификатор, уже присутствующий в хранилище профилей |
NS_E_DRM_PASSWORD_TOO_LONG | переданный пароль устаревшего профиля DRM превышает допустимую длину поля |
NS_E_DRMPROFILE_NOTFOUND | кодер не может разрешить запрошенный идентификатор профиля DRM |
Проверка устранения
Следующая попытка имеет смысл только после точечного исправления: выберите и привяжите существующий профиль DRM до запуска сеанса. Для NS_E_DRM_PROFILE_NOT_SETуспех означает принятие того же запрошенного действия после этого точного изменения состояния, а не просто работу другого файла или устройства.
- Широкий сброс не является первым действием для
NS_E_DRM_PROFILE_NOT_SET; не пересоздавайте сразу все профили кодера. Сохраните исходный идентификатор профиля и сравните один заведомо рабочий профиль, чтобы не спутать проблему поиска с политикой или паролем. - Не изменяйте доверенное время, контроль отзыва, проверку сертификатов или политику выхода только ради подавления
NS_E_DRM_PROFILE_NOT_SET; это обходит решение, а не исправляет его входные данные. - Сохраните один сбойный и один исправленный артефакт, чтобы устранение
NS_E_DRM_PROFILE_NOT_SETможно было проверять при регрессионном тестировании.
Проверяйте, не меняя исходный вопрос
В итоговом тесте NS_E_DRM_PROFILE_NOT_SET по возможности оставьте неизменными KID содержимого или хэш файла, запрошенное действие, пользователя или учётную запись, идентификатор устройства и маршрут выхода. Случай NS_E_DRM_PROFILE_NOT_SET разрешён только тогда, когда операция завершается без этого HRESULT и без замещающей ошибки соседней проверки лицензии, доверия, сеанса или политики.
Технические ссылки для NS_E_DRM_PROFILE_NOT_SET
- DRM в реальном времени — определяет объекты платформы, используемые при диагностике NS_E_DRM_PROFILE_NOT_SET.
- Защита DRM и распространение лицензий — документирует границу протокола или API, связанную с NS_E_DRM_PROFILE_NOT_SET.
- Обзор Windows Media DRM — описывает нормативный рабочий процесс, относящийся к NS_E_DRM_PROFILE_NOT_SET.
- Коды ошибок Windows Media Format SDK — перечисляет переходы безопасности и состояния, используемые при интерпретации NS_E_DRM_PROFILE_NOT_SET.
Нужно найти другой код? Найти другой код состояния или ошибки.
