Что означает код HRESULT 0x800401EF (MK_E_ENUMERATION_FAILED)?

 
Предыдущий Следующий
MK_E_NOPREFIX CO_E_NOTINITIALIZED

MK_E_ENUMERATION_FAILED

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

MK_E_ENUMERATION_FAILED (0x800401EF) — Не удалось перечислить моникеры.

Код 0x800401EF относится не ко всему компоненту «COM/WinRT», а к операции в области «контракт вызываемого interface, аргументы и state объекта». Сообщение «не удалось перечислить моникеры» позволяет начать с темы «mk, enumeration, сбой».

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

До изменения конфигурации сопоставьте первый отказ с фактическими параметрами операции. Для 0x800401EF с описанием «не удалось перечислить моникеры» воспроизведите отказ на минимальном объекте и меняйте только одно условие за запуск, чтобы отделить неверный вход от состояния системы.

Перед повтором 0x800401EF зафиксируйте IID и method, thread/apartment, argument values, object state и исходный HRESULT; отдельно запишите IMoniker, IBindCtx, IErrorInfo, HRESULT, IID. Различия по теме «mk, enumeration, сбой» для 0x800401EF покажут, изменился ли первый неуспешный этап.

Коррекция для 0x800401EF должна быть предметной: исправьте параметры и жизненный цикл объекта в соответствии с контрактом первого неуспешного метода. Для 0x800401EF и сообщения «не удалось перечислить моникеры» общий сброс допустим лишь как контроль, но не как доказательство причины.

После исправления повторите тот же вызов на прежних данных; у результата 0x800401EF должен измениться первый неуспешный этап, а не только последующее сообщение.

Документация для результата 0x800401EF: generic COM error codes · HRESULT values · IMoniker.


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