What does HRESULT 0x80030111 (STG_E_DOCFILETOOLARGE) mean?

 
Previous Next
STG_E_BADBASEADDRESS STG_E_NOTSIMPLEFORMAT

STG_E_DOCFILETOOLARGE

Capacity limit versus free-space limit

STG_E_DOCFILETOOLARGE indicates that the compound document is too large for the implementation handling it. This is not the same as STG_E_MEDIUMFULL: free disk space may still be available, while the storage engine, its addressing model, an older component, or an application-specific policy cannot create or process a container of the required size.

Compound File Binary Format uses sector and allocation structures to represent streams within a single file. Different readers and writers may support different practical limits, especially when legacy components, 32-bit processes, in-memory buffering, or older format assumptions are involved. A document that another program can read is therefore not conclusive proof that the failing application can save or extend it.

How to investigate

  • Measure the current file size and expected growth, including embedded objects, previews, property streams, and temporary rewrite space.
  • Identify the exact component that raises the HRESULT; the limit may be in the application rather than in the file system.
  • Test with a current implementation or an independent parser to separate a format-size issue from a generic memory failure.
  • Consider splitting large payloads or moving them outside the compound container when the application’s format contract permits it.

References


Looking for a different code? Search another status or error code.