Site icon EfmSoft

¿Qué significa el código HRESULT 0x800401C0 (CONVERT10_E_OLESTREAM_GET)?

 
Anterior Siguiente
INPLACE_E_NOTOOLSPACE CONVERT10_E_OLESTREAM_PUT

CONVERT10_E_OLESTREAM_GET

Qué significa CONVERT10_E_OLESTREAM_GET

CONVERT10_E_OLESTREAM_GET corresponde a 0x800401C0. Indica que el método Get del OLESTREAM falló mientras COM leía un objeto OLE 1.

Este resultado apunta a la frontera de lectura del flujo, no a un problema genérico de registro COM. Puede aparecer por un callback que devuelve menos bytes de los solicitados, por una posición de lectura incoherente o porque el origen se truncó antes de completar la estructura esperada.

Qué comprobar

  • Registra en cada llamada a Get el número de bytes solicitados y el realmente entregado; una lectura corta inesperada es una pista directa.
  • Conserva una copia exacta del OLESTREAM original y comprueba si el fallo aparece siempre en el mismo desplazamiento.
  • Verifica que el callback mantiene correctamente su posición entre llamadas y que no libera ni sustituye el búfer mientras la conversión sigue activa.
  • Si el flujo procede de un archivo o de la red, separa un EOF real de un error del proveedor de datos.

Cómo resolverlo

Corrige primero la implementación o el origen que alimenta Get. Si el documento está truncado, recupéralo desde una copia íntegra en lugar de rellenar bytes faltantes. Repite la conversión sólo con el flujo original preservado y después de confirmar que las lecturas devuelven exactamente los datos esperados.

Código cercano

CONVERT10_E_OLESTREAM_FMT significa que los bytes sí pudieron leerse pero no describen un OLESTREAM válido; CONVERT10_E_OLESTREAM_GET falla antes, en la obtención de esos bytes.

Referencias técnicas


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

Exit mobile version