| Anterior | Siguiente |
| STG_E_SHAREREQUIRED | STG_E_EXTANTMARSHALLINGS |
STG_E_NOTFILEBASEDSTORAGE
Qué significa STG_E_NOTFILEBASEDSTORAGE
STG_E_NOTFILEBASEDSTORAGE corresponde al HRESULT 0x80030107. La operación solo es válida para storage respaldado por archivo y el objeto actual no lo es. La descripción de Windows para este valor es «Se llamó a una operación no válida sobre un almacenamiento que no está basado en archivos.» y su origen se clasifica como winerror.h.
Structured Storage puede construirse sobre otras abstracciones; funciones que necesitan path o file handle no se aplican a todos los backings. 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
- Identifica el tipo real de ILockBytes/backing.
- Comprueba si la llamada requiere file-based storage por contrato.
- No inventes una ruta temporal si la semántica del objeto depende de un provider no basado en archivo.
Tratamiento seguro
Usa una API compatible con el backing o materializa una copia de archivo de forma explícita cuando el diseño lo permita.
Referencias técnicas
¿Buscas un código diferente? Buscar otro código de estado o error.