Site icon EfmSoft

Что означает код HRESULT 0xC00D32CA (NS_E_PROPERTY_NOT_FOUND)?

 
Предыдущий Следующий
NS_E_USE_FILE_SOURCE NS_E_PROPERTY_READ_ONLY

NS_E_PROPERTY_NOT_FOUND

Диагностика NS_E_PROPERTY_NOT_FOUND в конвейере Windows Media

Этот результат (0xC00D32CA) возвращается, когда запрошенное свойство отсутствует в выбранном объекте метаданных. Код определяет контрольную точку «отсутствующее свойство метаданных», поэтому диагностику следует начинать с объекта и операции, которым она принадлежит, а не с общего сброса Player.

Метаданные Windows Media могут относиться к файлу или потоку и поступать из заголовка ASF, вычисляемых атрибутов, онлайн-поставщика, кэша или обработчика конкретного формата при проверке «запрошенное свойство отсутствует в выбранном объекте метаданных». Возможности чтения, редактирования, локаль и схемы запросов независимы друг от друга при диагностике условия «отсутствующее свойство метаданных». В случае этот результат сохраняйте самый ранний результат нижнего уровня: оболочки могут сопоставлять разные причины с одним HRESULT в этой контрольной точке.

Где возникает сбой

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

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

Данные об атрибуте, схеме и локали

ЗафиксируйтеКак это помогает выделить этот результат
Ответственный вызовЗафиксируйте метод API, идентификатор объекта, поток или обратный вызов и временную метку для контрольной точки «отсутствующее свойство метаданных».
Решающие значенияидентификатор файла или содержимого, поставщик метаданных, номер потока, имя и тип атрибута, локаль, возможности чтения и редактирования, а также первый результат API метаданных
Поколение объектаОтметьте время создания объекта чтения, объекта записи, графа, URL-объекта, сеанса потоковой передачи или поставщика метаданных; устаревшее состояние может повторно вызвать он после изменения конфигурации.
Первый вложенный результатСохраните самый ранний статус кодека, COM, сокета, DNS, анализатора или поставщика до него; более поздние сообщения интерфейса менее конкретны.
Случай для сравненияИспользуйте один заведомо рабочий ресурс, проходящий ту же контрольную точку «отсутствующее свойство метаданных», изменив только отклонённое предварительное условие.

Контролируемый эксперимент с метаданными

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

Как интерпретировать ответ поставщика

Результат повторной проверкиТолкование для него
Тот же вызов по-прежнему возвращает кодЗначения, определяющие контрольную точку «отсутствующее свойство метаданных», не изменились либо вызывающая сторона всё ещё использует старое поколение объекта.
Новый объект работает успешноВремя жизни или кэшированное состояние способствовало появлению он; исправьте пересоздание объекта вместо применения обходного решения на уровне всего компьютера.
Вызов доходит до другого HRESULTИсходная граница пройдена. Диагностируйте новый код отдельно на его собственной стадии формата, графа, URL, сети или метаданных.
Сбой возникает только для одного ресурсаДанные указывают на состояние конкретного содержимого, URL, точки публикации, потока, атрибута или объекта, а не на общий сбой системы.

Близкие результаты не взаимозаменяемы

Главное различие: «не найдено» означает отсутствие ключа, а «не поддерживается» — отсутствие реализации этого свойства у поставщика. Эти случаи требуют разных проверок.

Близкий HRESULTКак его сравнивать
NS_E_END_OF_PLAYLISTСравните ответственный API и первое отклонённое значение: это соседняя контрольная точка, а не автоматически та же причина, что и у он.
NS_E_USE_FILE_SOURCEИспользуйте состояние объекта и порядок операций, чтобы определить, какой код является исходным, если оба появляются в одной трассировке.
NS_E_PROPERTY_READ_ONLYСохраните он отдельно, если он появляется только после устранения условия он.

Действия, вводящие в заблуждение

Технические ссылки

Закрывайте инцидент только после того, как исходная операция с ним успешно выполняется на актуальном объекте и наблюдается ожидаемое следующее состояние.


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

Exit mobile version