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