| Anterior | Siguiente |
| CO_E_SERVER_STOPPING | MEM_E_INVALID_LINK |
MEM_E_INVALID_ROOT
Qué significa MEM_E_INVALID_ROOT
MEM_E_INVALID_ROOT corresponde al HRESULT 0x80080009. Windows indica: «Se especificó un puntero de bloque raíz no válido.».
El HRESULT aparece dentro de validación de bloques y enlaces del gestor de memoria OLE. Para aislarlo, parte de esta condición: Windows resume la condición como «Se especificó un puntero de bloque raíz no válido.». Para esta constante, enlaza esa descripción con puntero de bloque, tamaño solicitado, enlaces/root usados por el allocator y operación que detecta la estructura inválida antes de modificar registro, objeto o datos.
Qué comprobar
- Documenta puntero de bloque, tamaño solicitado, enlaces/root usados por el allocator y operación que detecta la estructura inválida; sin esa correlación el código solo identifica la frontera general.
- Verifica que «Se especificó un puntero de bloque raíz no válido.» siga siendo cierto con el mismo objeto y parámetros antes de modificar varias condiciones simultáneamente.
Tratamiento recomendado
Detén el uso del bloque inválido y encuentra dónde se creó o corrompió su raíz/enlace/tamaño. Corregir el allocator o ownership es preferible a ignorar la validación y continuar con memoria potencialmente dañada.
Resultados cercanos que significan otra cosa
MEM_E_INVALID_SIZEsignifica «El tamaño de asignación solicitado es demasiado grande.».MEM_E_INVALID_LINKsignifica «Una cadena de asignación contenía un puntero de enlace no válido.».
Después del cambio, repite desde un lifecycle limpio y verifica que «Se especificó un puntero de bloque raíz no válido.» desaparece sin relajar controles globales ni sustituir datos por valores artificiales.
Referencias técnicas
¿Buscas un código diferente? Buscar otro código de estado o error.
