| Anterior | Siguiente |
| TYPE_E_CIRCULARTYPE | STG_E_FILENOTFOUND |
STG_E_INVALIDFUNCTION
Qué significa STG_E_INVALIDFUNCTION
STG_E_INVALIDFUNCTION corresponde al HRESULT 0x80030001. La operación solicitada no es válida para este objeto o modo de almacenamiento. La descripción de Windows para este valor es «No se pudo realizar la operación solicitada.» y su origen se clasifica como winerror.h.
El HRESULT aparece cuando el método elegido no forma parte de las capacidades reales del objeto IStorage/IStream/ILockBytes o cuando el modo de apertura hace que esa función sea inaplicable. Structured Storage separa errores de formato, acceso, locking, transacción y backing device. Mantener esa frontera evita diagnosticar todos los STG_* como un simple “error de archivo”.
Datos que conviene capturar
- Identifica la interfaz y el método exactos que devolvieron el código; no lo reduzcas a un fallo genérico de E/S.
- Registra el STGM usado al abrir el objeto y si el storage es directo, transacted, de solo lectura o implementado por un provider propio.
- Comprueba las capacidades sobre un objeto recién abierto; un wrapper puede conservar una interfaz cuyo estado ya no permite la operación.
Recuperación recomendada
Selecciona una interfaz o modo que admita la operación. Repetir el mismo método con el mismo objeto y estado no corrige una función inválida.
Referencias técnicas
¿Buscas un código diferente? Buscar otro código de estado o error.
