| Anterior | Siguiente |
| CACHE_E_NOCACHE_UPDATED | OLEOBJ_E_INVALIDVERB |
OLEOBJ_E_NOVERBS
Qué significa OLEOBJ_E_NOVERBS
OLEOBJ_E_NOVERBS es 0x80040180 y sí es un HRESULT de error. El objeto OLE no expone ningún verbo utilizable por el contenedor. Esto puede ser perfectamente coherente para un objeto pensado sólo para presentar datos, pero impide construir una acción interactiva mediante el mecanismo de verbos OLE.
Cómo localizar la causa
- Llama a
IOleObject::EnumVerbssobre la instancia real y conserva su retorno, en lugar de deducir verbos por asociaciones de archivo. - Registra CLSID y versión del servidor para comprobar si la clase debería anunciar acciones como Open, Edit o verbos privados.
- Si el objeto conserva una presentación válida, separa esa capacidad de la posibilidad de editarlo; no son el mismo contrato.
Solución correcta
Presenta el objeto como no interactivo cuando ese sea su diseño, usa una operación específica de la clase si existe, o repara el servidor únicamente si una versión compatible demuestra que faltan verbos que deberían registrarse. Volver a enumerar una instancia sin cambios no crea comandos nuevos.
HRESULT cercano
OLEOBJ_E_INVALIDVERB se obtiene cuando existe el mecanismo de verbos pero el número pedido es inválido; aquí no hay verbos que escoger.
Referencias técnicas
¿Buscas un código diferente? Buscar otro código de estado o error.
