Site icon EfmSoft

¿Qué significa el código HRESULT 0x80030109 (STG_E_DOCFILECORRUPT)?

 
Anterior Siguiente
STG_E_EXTANTMARSHALLINGS STG_E_BADBASEADDRESS

STG_E_DOCFILECORRUPT

Qué significa STG_E_DOCFILECORRUPT

STG_E_DOCFILECORRUPT corresponde al HRESULT 0x80030109. El compound file contiene estructuras internas incoherentes o dañadas. La descripción de Windows para este valor es «El archivo de almacenamiento estructurado está dañado.» y su origen se clasifica como winerror.h.

El lector superó la cabecera pero encontró problemas en directorios, FAT/miniFAT, cadenas de sectores u otras estructuras MS-CFB. Eso lo distingue de STG_E_INVALIDHEADER. El dato decisivo no es solo el bit de severidad del HRESULT, sino el contrato de la llamada que lo devolvió y el estado del objeto en ese instante.

Diagnóstico práctico

  • Haz una copia byte a byte y trabaja solo sobre ella.
  • Compara tamaño/hash con una fuente conocida y revisa si hubo truncado durante copia o recuperación.
  • Usa un lector independiente en modo no destructivo; que un stream pueda extraerse no demuestra que el contenedor completo sea sano.

Recuperación recomendada

Recupera desde una copia válida o extrae datos verificables hacia un contenedor nuevo. No abras y guardes el único original intentando “arreglarlo”.

Prueba después del cambio

Valida una copia con una reapertura completa y, cuando sea posible, con un segundo lector; compara streams/metadata esperados sin modificar el original durante la comprobación.

Referencias técnicas


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

Exit mobile version