| Anterior | Siguiente |
| DISP_E_OVERFLOW | DISP_E_UNKNOWNLCID |
DISP_E_BADINDEX
Qué significa DISP_E_BADINDEX
DISP_E_BADINDEX corresponde al HRESULT 0x8002000B. Windows indica: «Índice no válido.».
No es un fallo COM/OLE genérico; corresponde a invocación IDispatch/OLE Automation y conversión de argumentos VARIANT. Aquí, Windows resume la condición como «Índice no válido.». Para esta constante, enlaza esa descripción con DISPID o nombre, IID/LCID, flags de Invoke, DISPPARAMS, número/orden de argumentos, VARTYPE de cada VARIANT y EXCEPINFO/argErr devueltos antes de modificar registro, objeto o datos.
Qué comprobar
- Captura DISPID o nombre, IID/LCID, flags de Invoke, DISPPARAMS, número/orden de argumentos, VARTYPE de cada VARIANT y EXCEPINFO/argErr devueltos antes de cualquier retry, re-registro o reinicio del proceso.
- Usa «Índice no válido.» como hipótesis verificable y comprueba que corresponde a este CLSID/IID/moniker/VARIANT concreto.
Tratamiento recomendado
Verifica DISPID/nombre, flags, orden y tipos VARIANT de DISPPARAMS contra la firma IDispatch real. Corrige el argumento señalado por argErr o EXCEPINFO y repite sin conversiones implícitas innecesarias.
Resultados cercanos que significan otra cosa
DISP_E_NOTACOLLECTIONsignifica «El objeto no admite una colección.».DISP_E_UNKNOWNINTERFACEmarca una condición diferente: «Interfaz desconocida.».
El objetivo es demostrar que la condición «Índice no válido.» ya no existe en la frontera original; un éxito obtenido por saltarse esa frontera no valida la corrección.
Referencias técnicas
¿Buscas un código diferente? Buscar otro código de estado o error.
