¿Qué significa el código HRESULT 0x80040068 (DV_E_LINDEX)?

 
Anterior Siguiente
DV_E_STATDATA DV_E_TYMED

DV_E_LINDEX

Qué significa DV_E_LINDEX

DV_E_LINDEX corresponde al HRESULT 0x80040068. Windows indica: «El valor lindex no es válido.».

La causa se busca en transferencia OLE de datos mediante FORMATETC, STGMEDIUM y objetos IDataObject. Para esta constante, Windows resume la condición como «El valor lindex no es válido.». Para esta constante, enlaza esa descripción con FORMATETC completo, cfFormat, tymed, DVASPECT, lindex, DVTARGETDEVICE, STGMEDIUM y origen/destino IDataObject antes de modificar registro, objeto o datos.

Qué comprobar

  • Registra FORMATETC completo, cfFormat, tymed, DVASPECT, lindex, DVTARGETDEVICE, STGMEDIUM y origen/destino IDataObject en el mismo intento que devuelve el HRESULT.
  • Mantén constantes identidad, hilo y datos mientras validas la condición «El valor lindex no es válido.» para que la comparación sea útil.

Tratamiento recomendado

Compara exactamente FORMATETC solicitado con los formatos/tymed que ofrece el IDataObject. Negocia una combinación compatible y libera STGMEDIUM según su contrato; no reinterpretar el buffer como otro formato.

Resultados cercanos que significan otra cosa

  • DV_E_STGMEDIUM marca una condición diferente: «La estructura STGMEDIUM no es válida.».
  • DV_E_CLIPFORMAT marca una condición diferente: «El formato del Portapapeles no es válido.».

La reparación se valida repitiendo la misma llamada y confirmando que deja de cumplirse «El valor lindex no es válido.» sin introducir una conversión, registro o fallback distinto.

Referencias técnicas


¿Buscas un código diferente? Buscar otro código de estado o error.