| Предыдущий | Следующий |
| MK_E_SYNTAX | MK_E_INVALIDEXTENSION |
MK_E_NOOBJECT
Что означает MK_E_NOOBJECT
MK_E_NOOBJECT (0x800401E5) — моникер синтаксически допустим, но обозначаемый им объект не найден для текущей операции binding.
Моникер COM — это объект-имя, который не просто хранит строку, а знает правила разбора, сравнения, композиции и привязки к обозначаемому объекту или хранилищу. Поэтому ошибки MK_E_* нужно связывать с конкретным классом моникера и операцией IMoniker, а не трактовать как общий сбой COM.
Что проверить
- Запишите class и display name моникера, запрошенный IID и результат Running Object Table lookup, если он участвует.
- Для file/item/custom moniker проверьте существование именно соответствующего target, а не только корректность строки имени.
- Различите «объект не существует» и «объект существует, но не поддерживает нужный интерфейс».
Что делать
Восстановите/создайте target или исправьте идентичность моникера. Повтор имеет смысл, если объект действительно может появиться.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.