What does HRESULT 0xC0262401 (ERROR_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED) mean?

 
Previous Next
ERROR_GRAPHICS_SPECIFIED_CHILD_ALREADY_CONNECTED ERROR_GRAPHICS_NOT_A_LINKED_ADAPTER

ERROR_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED

Interpret the result in its owning layer: graphics child descriptor not supported

Windows reports ERROR_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED (0xC0262401) at the child checkpoint. Here, the selected child device cannot provide EDID or another requested descriptor through this interface. That narrows the first investigation to child descriptor exposure capability instead of the entire GPU stack.

ERROR_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED: A child UID identifies an output of the adapter, not necessarily a permanently attached monitor. For ERROR_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED, Presence and descriptor capability must be re-evaluated after hot-plug. For ERROR_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED, the built-in one-line message identifies the immediate result; diagnosis also needs the producing API, object ownership and the display generation current at the time.

Capture before recreating objects

Capture itemWhy it matters for ERROR_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED
Supporting tracechild UID, HPD awareness, monitor descriptor support, PnP events and connector telemetry
Object identitychild descriptor exposure capability
Rejected boundarythe selected child device cannot provide EDID or another requested descriptor through this interface
Decisive capturechild UID, child type, descriptor type, hot-plug awareness and driver capabilities
Current graph statedisplay-adapter child, monitor PDO and connector-presence state

For ERROR_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED, preserve the unsigned HRESULT, symbolic name, first failing API and timestamp in one record. If cleanup later fails too, keep that secondary result separately from ERROR_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED.

Reproduce one variable at a time

  1. Freeze the ERROR_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED generation. Record child UID, child type, descriptor type, hot-plug awareness and driver capabilities. Before diagnosing ERROR_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED, do not resize, hot-plug, recreate or release the object under examination.
  2. Run the narrow ERROR_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED comparison. query a descriptor-capable monitor child and compare with the unsupported child type. During the ERROR_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED comparison, keep every driver, monitor, resource format and unrelated policy unchanged.
  3. Observe the layer after ERROR_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED. For ERROR_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED, if the exact check passes, record the next HRESULT or visible outcome. A different downstream result shows that the ERROR_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED boundary was crossed.
  4. Repeat ERROR_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED through a lifecycle transition. For ERROR_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED, exercise one relevant resize, mode switch, device recreation, hot-plug or session change and confirm that this result does not reuse stale handles.

The comparison with ERROR_GRAPHICS_INVALID_MONITORDESCRIPTOR is especially useful: ERROR_GRAPHICS_INVALID_MONITORDESCRIPTOR means a descriptor was supplied but malformed. For ERROR_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED, recording both names prevents a broad “graphics error” label from merging distinct ownership, capability and lifetime problems.

Recovery contract

Branch on descriptor support and use fixed or driver-supplied modes when the child has no descriptor. Repair of ERROR_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED is complete only when the original call succeeds or returns its documented nonfatal status and the same lifetime test remains correct after a second display transition.

  • The ERROR_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED trace identifies one producing API and one current graphics object, rather than only the final UI symptom.
  • The passing run changes exactly the condition described for ERROR_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED; unrelated adapter, monitor and application state remains unchanged.
  • For ERROR_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED, debug-layer, ETW or driver diagnostics no longer report the rejected child descriptor exposure capability contract during the same scenario.
  • The application handles recurrence of ERROR_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED without an unbounded retry loop, leaked resource, duplicate composition target or stale topology handle.

Implementation notes for ERROR_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED

For ERROR_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED, log child UID, HPD awareness, monitor descriptor support, PnP events and connector telemetry. When the ERROR_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED path returns a count, size, status flag or replacement object, retain it even on a nonfatal result because it can direct the next call.

A production fallback for ERROR_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED should be explicit: pause rendering, re-enumerate, rebuild one cache entry, recreate a device, or decline a protected path only when this layer calls for that action. Reinstalling every display component, deleting all caches or forcing a resolution change is not an evidence-based fix for ERROR_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED.

Technical references


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