¿Qué significa el código HRESULT 0x80030001 (STG_E_INVALIDFUNCTION)?

 
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.