What does HRESULT 0x887A0036 (DXGI_ERROR_ALREADY_EXISTS) mean?

 
Previous Next
DXGI_ERROR_CACHE_HASH_COLLISION DXGI_DDI_ERR_WASSTILLDRAWING

DXGI_ERROR_ALREADY_EXISTS

Locate the failing graphics boundary: already exists

Windows reports DXGI_ERROR_ALREADY_EXISTS (0x887A0036) at the dxgi error checkpoint. Here, creation requested an element whose identity is already present in the relevant DXGI collection. That narrows the first investigation to DXGI-managed named or keyed element instead of the entire GPU stack.

Do not erase all shader caches or recreate every graphics object before preserving the first failing call. Cache, policy, remote-session and device-lifetime failures have different recovery rules.

Evidence that makes the result actionable

Capture itemWhy it matters
What to captureelement name or key, factory/device identity, creation call, existing object lifetime and concurrent creators
Current graph stateDXGI factory, adapter, device, resource or cache session
Supporting traceDXGI debug messages, adapter LUID, driver version, device-removal reason where applicable and the exact API parameters
Object identityDXGI-managed named or keyed element
Rejected conditioncreation requested an element whose identity is already present in the relevant DXGI collection

A controlled comparison

  1. Capture the failing state. Record element name or key, factory/device identity, creation call, existing object lifetime and concurrent creators.
  2. Run two synchronized creators with the same identifier and then repeat with a unique identifier.

The comparison with DXGI_ERROR_NAME_ALREADY_EXISTS is especially useful: DXGI_ERROR_NAME_ALREADY_EXISTS is the older named-resource result and may arise from a different API family.

Correction and proof

Reuse the existing object when contracts match or allocate a unique name; do not delete unrelated cache or device state.

  • debug-layer, ETW or driver diagnostics no longer report the rejected DXGI-managed named or keyed element contract during the same scenario.

Implementation notes

Technical references


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