Fix ERROR_GRAPHICS_SOURCE_ALREADY_IN_SET (0xC0262317)
This DirectX error means a video source is already in the active source set. The fix is restarting the graphics driver or reinitializing the display context.
Quick Answer
Restart your GPU driver with Win+Ctrl+Shift+B or reboot. If that fails, disable and re-enable the affected monitor in Device Manager.
What's Happening Here
This error code 0xC0262317 means the DirectX Graphics Kernel subsystem (dxgkrnl.sys) has detected a video present source — a GPU output port — that's already registered in the current video present source set. Don't confuse this with a network adapter set; it's the internal collection of active display outputs Windows maintains per session.
You'll see this when a custom application (a game, 3D renderer, or video capture tool) tries to add a display source that's already part of the active set. The common scenario: you're running a multi-monitor setup, and an app enumerates outputs, then tries to add one a second time. But the real trigger is often a driver crash or a monitor being hot-plugged while an app holds a stale reference.
The error is rare. Most users won't hit it unless they're a developer coding against DXGI, or they're running a finicky game with custom monitor profiles. The reason step 2 (driver restart) works is that it forces the Graphics Kernel to flush the entire source set and rebuild it fresh.
Fix Steps
- Restart the GPU driver — Press Win+Ctrl+Shift+B. Screen flashes black for 1-2 seconds. That resets the graphics driver stack without a full reboot. If the error was caused by a stale source reference, this clears it.
- Reboot the machine — If the hotkey didn't work, do a full restart. The Graphics Kernel state is volatile; a cold boot is the nuclear fix. Don't just log off — that doesn't clear the source set properly.
- Disable and re-enable the monitor — Open Device Manager, expand
Monitors, right-click your main display, selectDisable device. Wait 5 seconds, then right-click again andEnable device. This re-registers the video present source fresh. - Update your GPU driver — Go to your GPU vendor's site (NVIDIA, AMD, Intel) and download the latest driver. Old drivers can leak source handles. Use DDU in Safe Mode if you're switching versions.
- Check your application — If you're a developer, look at your
EnumOutputscalls. Your bug is callingSetDisplayModeorTakeOwnershipon a source you already grabbed. Example:
// BAD: Adding source twice causes 0xC0262317
IDXGIOutput* pOutput;
pSwapChain->GetContainingOutput(&pOutput);
pOutput->TakeOwnership(nullptr, 0); // first call works
pOutput->TakeOwnership(nullptr, 0); // second call throws the error
Alternative Fixes
- Disconnect and reconnect the monitor — Physically unplug the display cable, wait 10 seconds, plug it back. This forces a new video present source enumeration.
- Run a DirectX diagnostic — Open
dxdiag.exe, clickSave All Information, check the log for any display driver errors. If you seeDDI errororDriver failure, reinstall the driver. - Change resolution in Windows — Go to Settings > System > Display, change the resolution to something else, then change it back. This triggers a mode set that re-validates the source set.
- Roll back a recent Windows update — Some cumulative updates have broken the Graphics Kernel for multi-monitor setups. Check update history and uninstall if the error started after a patch.
Prevention Tip
Never hot-plug monitors while GPU-intensive apps are running. Always close the game or 3D app before connecting a second display. If you're writing code, check E_NOT_VALID_STATE returns from TakeOwnership — that's the milder variant of this error. And keep your GPU drivers current; stale ones love to corrupt the source set.
This error is a state machine problem. The Graphics Kernel expects each source to be registered exactly once. Treat it like a singleton — and you won't see 0xC0262317 again.
Was this solution helpful?