| Предыдущий | Следующий |
| OLEOBJ_S_CANNOT_DOVERB_NOW | INPLACE_S_TRUNCATED |
OLEOBJ_S_INVALIDHWND
Что означает OLEOBJ_S_INVALIDHWND
OLEOBJ_S_INVALIDHWND (0x00040182) — информационный результат IOleObject::DoVerb: операция verb была выполнена, но переданный hwndParent недопустим. Это не эквивалент полного отказа активации.
Практическая проверка
Проверьте lifetime родительского окна и поток, которому оно принадлежит. Сохраните значение hwndParent, результат IsWindow непосредственно перед вызовом, lVerb и lprcPosRect. Особенно подозрителен кэшированный HWND после пересоздания окна или завершения UI-потока.
- Не используйте старый handle после destroy/recreate.
- Убедитесь, что контейнер передаёт окно нужного документа, а не временное или уже уничтоженное окно.
- Поскольку HRESULT положительный, отдельно проверьте фактическое состояние активированного OLE-объекта перед попыткой «повторить ошибку».
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.
