| Предыдущий | Следующий |
| MK_E_UNAVAILABLE | MK_E_NOOBJECT |
MK_E_SYNTAX
Что означает MK_E_SYNTAX
MK_E_SYNTAX (0x800401E4) — display name или специфичный для класса часть имени моникера имеет недопустимый синтаксис.
Моникер COM — это объект-имя, который не просто хранит строку, а знает правила разбора, сравнения, композиции и привязки к обозначаемому объекту или хранилищу. Поэтому ошибки MK_E_* нужно связывать с конкретным классом моникера и операцией IMoniker, а не трактовать как общий сбой COM.
Что проверить
- Зафиксируйте исходную строку с редактированием секретов и число символов, которое parser успел обработать.
- Определите moniker class/parser, который интерпретировал имя; одинаковая строка может иметь разные правила в разных классах.
- Проверьте escaping, separators и обязательные компоненты на минимальном воспроизводимом имени.
Что делать
Исправьте строку согласно синтаксису конкретного parser-а; не пытайтесь лечить это перерегистрацией всех COM-компонентов.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.
