| Anterior | Siguiente |
| OLEOBJ_S_CANNOT_DOVERB_NOW | INPLACE_S_TRUNCATED |
OLEOBJ_S_INVALIDHWND
Qué significa OLEOBJ_S_INVALIDHWND
OLEOBJ_S_INVALIDHWND tiene el valor 0x00040182. La ruta de activación OLE detectó que el hwndParent suministrado no era válido. El retorno sigue perteneciendo a la clase de éxito, por lo que hay que inspeccionar el efecto sobre la UI en vez de convertirlo automáticamente en una excepción.
Comprobaciones útiles
- Valida el HWND justo antes de
IOleObject::DoVerby registra el ID del hilo propietario de la ventana. - Busca mensajes de destrucción o recreación de la ventana entre la captura del handle y la llamada; los HWND almacenados durante mucho tiempo son una causa típica.
- Confirma que el rectángulo de posicionamiento y el client site corresponden a la misma ventana que se pretende usar como padre.
Cómo corregirlo
Vuelve al hilo de UI, obtiene el handle vigente del contenedor y repite la activación sólo mientras su lifetime esté garantizado. No guardes un HWND desnudo en callbacks asíncronos si la ventana puede cerrarse o recrearse antes de consumirlo.
Qué no confundir
OLEOBJ_S_CANNOT_DOVERB_NOW describe la disponibilidad del verbo; OLEOBJ_S_INVALIDHWND apunta específicamente al contexto de ventana pasado a la operación.
Referencias técnicas
¿Buscas un código diferente? Buscar otro código de estado o error.