Что означает код HRESULT 0x80041700 (FILTER_E_END_OF_CHUNKS)?

 
Предыдущий Следующий
SEARCH_E_NOREGION FILTER_E_NO_MORE_TEXT

FILTER_E_END_OF_CHUNKS

Что означает FILTER_E_END_OF_CHUNKS

FILTER_E_END_OF_CHUNKS (0x80041700) — IFilter::GetChunk достиг конца последовательности фрагментов документа.

IFilter — COM-интерфейс, через который Windows Search и старые службы индексирования получают из документа текст и свойства. Фильтр выдаёт содержимое последовательностью chunks: после GetChunk тип текущего фрагмента определяет, нужно ли читать его через GetText или GetValue.

Что проверить

  • Проверьте, что код получен именно после последнего успешно возвращённого chunk и что вызывающая сторона прекращает перечисление.
  • Если конец наступил неожиданно рано, сохраните ID и флаги последнего chunk, параметры IFilter::Init и версию обработчика.
  • Не запускайте повторный вызов GetChunk в цикле, ожидая, что появится новый фрагмент.

Что делать

Для обычного перечисления это терминальный маркер, несмотря на формат HRESULT с признаком failure. Его не следует автоматически показывать пользователю как повреждение документа.

Как интерпретировать результат

Отличайте его от FILTER_E_NO_MORE_TEXT и FILTER_E_NO_MORE_VALUES: те завершают чтение содержимого текущего chunk, а не всего документа.

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


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