Что означает код HRESULT 0x800C0007 (INET_E_DATA_NOT_AVAILABLE)?

 
Предыдущий Следующий
INET_E_OBJECT_NOT_FOUND INET_E_DOWNLOAD_FAILURE

INET_E_DATA_NOT_AVAILABLE

Как диагностировать INET_E_DATA_NOT_AVAILABLE

INET_E_DATA_NOT_AVAILABLE — HRESULT, относящийся к области URLMon/Internet API. Соединение или ресурс существует, но обработчик протокола не смог получить пригодные данные: ответ пуст, неполон, отсутствует в кэше либо недоступен в нужном представлении.

Этот HRESULT возникает на уровне привязки URL к объекту. Применительно к этому результату для диагностики важны фактический адрес после перенаправлений, MIME-тип, выбранный обработчик схемы и контекст безопасности процесса.

Практическая диагностика

Важно сохранить исходный контекст вызова: имя функции, параметры, состояние объекта и первый низкоуровневый статус. Применительно к этому результату без этого одинаковый HRESULT может ошибочно связываться с разными причинами.

  • При разборе этот результат сопоставьте поведение под интерактивной учётной записью и в службе, где отличаются прокси, хранилища сертификатов и профиль пользователя.
  • При разборе он исключите ответ-подмену: HTML-страницу ошибки, перенаправление на каталог или страницу входа вместо ожидаемого файла.
  • При разборе он зафиксируйте исходный и окончательный URL, схему, MIME-тип и код ответа сервера.
  • При разборе он проверьте доступность ресурса, обработчик протокола и регистрацию компонента, который должен создать объект.

Какие данные собрать

  • Запишите выбранный протокольный обработчик, CLSID создаваемого объекта и HRESULT первого неуспешного вызова.
  • Проверьте воспроизведение на минимальном URL без кэша и с теми же параметрами безопасности.
  • Сохраните цепочку URL и редиректов, Content-Type, Content-Length и первые диагностические байты ответа.

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

Проверка исправления он должна включать успешный рабочий путь, предсказуемый отказ на некорректном входе и отсутствие новых предупреждений в журналах подсистемы URLMon/Internet API.

Ссылки по этому результату


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