Что означает код HRESULT 0xC00D32DC (NS_E_METADATA_INVALID_DOCUMENT_TYPE)?

 
Предыдущий Следующий
NS_E_METADATA_CACHE_DATA_NOT_AVAILABLE NS_E_METADATA_IDENTIFIER_NOT_AVAILABLE

NS_E_METADATA_INVALID_DOCUMENT_TYPE

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

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

Метаданные Windows Media могут относиться к файлу или потоку и поступать из заголовка ASF, вычисляемых attributes, online/cache provider или обработчика конкретного формата. Возможности чтения, редактирования, locale и query schema независимы друг от друга при диагностике условия «недопустимый тип документа метаданных». В случае этот результат, сохраняйте самый ранний результат нижнего уровня: оболочки могут сопоставлять разные причины с одним HRESULT в этой контрольной точке.

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

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

Наиболее показательная проверка — открыть минимальный документ формата, поддерживаемого тем же provider, и сравнить тип проблемного документа с объявленной schema. Если после изменения только этого условия тот же вызов проходит дальше, данные подтверждают рассматриваемую границу при проверке «тип metadata-документа не соответствует обработчику, ожидаемому этой операцией». Если нет, вернитесь к первому вложенному результату, не расширяя исправление при проверке «тип metadata-документа не соответствует обработчику, ожидаемому этой операцией». Этот результат. Если этого не произошло, вернитесь к первой вложенной ошибке, а не расширяйте область исправлений при изоляции случая metadata invalid document type.

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

ЗафиксируйтеКак это помогает выделить этот результат
Вызов-владелецЗафиксируйте метод API, идентификатор объекта, thread или callback и временную метку этой контрольной точки.
Решающие значенияидентификатор файла или содержимого, metadata provider, номер потока, имя и тип атрибута, locale, возможности чтения и редактирования и первый результат metadata API
Поколение объектаОтметьте время создания reader, writer, graph, URL object, streaming session или metadata provider; устаревшее состояние может повторно вызвать он после изменения конфигурации.
Первый вложенный результатСохраните самый ранний status codec, COM, socket, DNS, parser или provider до него; более поздние сообщения UI менее конкретны.
Случай для сравненияИспользуйте один заведомо рабочий ресурс, проходящий ту же контрольную точку, и изменяйте только отклонённое предварительное условие при проверке «тип metadata-документа не соответствует обработчику, ожидаемому этой операцией».

Эксперимент с метаданными только для чтения

  1. Запишите 0xC00D32DC, он, точную операцию и время первого сбоя.
  2. Сохраните идентификатор файла или содержимого, metadata provider, номер потока, имя и тип атрибута, locale, возможности чтения и редактирования и первый результат metadata API.
  3. Не используйте повторно graph, session, reader или metadata object, созданные до изменения соответствующей конфигурации или ресурса.
  4. Выполните один изолированный тест: открыть минимальный документ формата, поддерживаемого тем же provider, и сравнить тип проблемного документа с объявленной schema.
  5. Повторите проверку через тот же API и protocol path; другой Player или локальная копия полезны только как сравнение и не доказывают исправление исходной границы.
  6. Подтвердите ожидаемое следующее состояние и сохраните новый HRESULT как отдельный downstream result при проверке «тип metadata-документа не соответствует обработчику, ожидаемому этой операцией».

Интерпретация ответа поставщика

Результат повторной проверкиТолкование для него
Тот же вызов по-прежнему возвращает этот кодЗначения, определяющие контрольную точку «недопустимый тип документа метаданных», не изменились либо вызывающая сторона всё ещё использует старое поколение объекта.
Новый объект работает успешноНа результат повлияли lifetime объекта или cached state он; исправьте пересоздание объекта вместо обходного решения на уровне всего компьютера.
Вызов доходит до другого HRESULTИсходная граница пройдена. Диагностируйте новый код отдельно на его собственной стадии format, graph, URL, network или metadata для состояния «тип metadata-документа не соответствует обработчику, ожидаемому этой операцией».
Сбой возникает только для одного ресурсаДанные указывают на состояние конкретного content, URL, publishing point, stream, attribute или object, а не на общий outage.

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

Основное различие: Metadata lookup, schema validation, locale и edit capability — независимые контрольные точки даже для одного attribute.

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

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

  • не удаляйте metadata cache или tags до сохранения provider, key атрибута, типа и locale, которые привели к результату при проверке «тип metadata-документа не соответствует обработчику, ожидаемому этой операцией».
  • Не стирайте данные о первом появлении он многократными повторами; callbacks и reconnect могут заменить полезное исходное состояние более поздней ошибкой оболочки.
  • Не публикуйте credentials, материалы protected content или полные private URL при проверке «тип metadata-документа не соответствует обработчику, ожидаемому этой операцией». Записывайте только обезличенные identifiers, lengths, hashes и необходимые protocol fields.

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

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


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