What does HRESULT 0x8000000A (E_PENDING) mean?

 
Could be also:
ConstantTypeOS
STATUS_HANDLES_CLOSEDNTSTATUSWindows
Previous Next
EVT_WDSMCS_S_PARAMETERS_READ E_BOUNDS

E_PENDING

Required data is not available yet

E_PENDING is HRESULT 2147483658 (0x8000000A) from winerror.h. The documented description is “The data necessary to complete this operation is not yet available.” The relevant context is the Windows Runtime metadata, object lifetime, asynchronous operation, activation, and apartment model.

Where it is encountered

  • C++/WinRT, WRL, .NET projections, or native WinRT ABI calls.

The immediate focus is an operation that deliberately exposes deferred data or asynchronous production rather than a completed value.

What to verify

Verify that a documented completion signal, callback, event, or subsequent query exists and the caller keeps the producing object alive until it fires.

Difference from nearby HRESULTs

It means the result may become available later; E_ABORT means the operation was stopped, while a timeout means the caller stopped waiting without proving completion.

Correct handling and recovery

Keep the operation pending, subscribe once to its completion path, and avoid reading output buffers as final. Cancellation must detach callbacks and release resources without racing the producer.

Practical scenario

A thumbnail provider returns E_PENDING while decoding an image. The shell retains the request token, waits for the provider notification, and asks again only after the generation changes.

References


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