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