| Предыдущий | Следующий |
| MK_E_INVALIDEXTENSION | MK_E_NOTBINDABLE |
MK_E_INTERMEDIATEINTERFACENOTSUPPORTED
Что означает MK_E_INTERMEDIATEINTERFACENOTSUPPORTED
MK_E_INTERMEDIATEINTERFACENOTSUPPORTED (0x800401E7) — Промежуточная операция завершилась ошибкой.
Код 0x800401E7 относится не ко всему компоненту «COM/WinRT», а к операции в области «контракт вызываемого interface, аргументы и state объекта». Сообщение «промежуточная операция завершилась ошибкой» позволяет начать с темы «mk, intermediateinterfacenotsupported».
Что проверить и как подтвердить исправление
Сначала сверьте запрос с возможностями фактически установленной версии компонента. Для 0x800401E7 в условии «промежуточная операция завершилась ошибкой» проверьте возможности фактически установленной версии и свойства, реально предоставленные объектом; неизменённый запрос к неподдерживаемой функции повторять бессмысленно.
Для воспроизведения 0x800401E7 сохраните IID и method, thread/apartment, argument values, object state и исходный HRESULT; отдельно запишите HRESULT, IMoniker, IBindCtx, IErrorInfo, IID. По теме «mk, intermediateinterfacenotsupported» для 0x800401E7 сравните эти данные с исправным запуском до очистки журналов или пересоздания объекта.
После локализации 0x800401E7 действуйте по контракту подсистемы: исправьте параметры и жизненный цикл объекта в соответствии с контрактом первого неуспешного метода. Для 0x800401E7 и условия «промежуточная операция завершилась ошибкой» неизменённый повтор без нового состояния не считается исправлением.
Повторите операцию в том же окружении и сравните первый отличающийся вызов; для результата 0x800401E7 это надёжнее единичного успеха на других данных.
Документация для результата 0x800401E7: generic COM error codes · HRESULT values · IMoniker.
Нужно найти другой код? Найти другой код состояния или ошибки.