0XC01E0316

STATUS_GRAPHICS_INVALID_VIDEOPRESENTTARGETSET (0xC01E0316) Fix

This error usually appears after GPU driver updates or when a game switches display outputs mid-session. It means Windows handed the graphics stack a display target that no longer exists.

You alt-tab out of a fullscreen game, unplug a monitor, or hot-plug a DisplayPort cable, and Windows bluescreens or a DXGI app crashes with STATUS_GRAPHICS_INVALID_VIDEOPRESENTTARGETSET. The stop code in WinDbg reads 0xC01E0316, and the faulting process is almost always the title you just alt-tabbed from or dwm.exe itself. I've seen this most on Windows 10 21H2 and Windows 11 22H2 with NVIDIA 5xx drivers and AMD Adrenalin 23.x, especially when the user runs a triple-monitor setup with mixed refresh rates.

What the error actually means

A "video present target" is the specific output surface the GPU presents to — a monitor, a virtual display, a swap chain's back buffer destination. When an app calls IDXGISwapChain::Present, the kernel-mode driver (KMD) resolves that swap chain to a target set. If the target the app references has been torn down — because the monitor went to sleep, the display was removed, the driver reset, or the compositor reconfigured the topology — the kernel throws STATUS_GRAPHICS_INVALID_VIDEOPRESENTTARGETSET instead of silently dropping the frame.

The real culprit is almost never Windows. It's a driver that didn't handle a display topology change cleanly, or an app that kept presenting to a stale target after WM_DISPLAYCHANGE. Older DX11 titles are the worst offenders because they cache the target set at swap chain creation and don't revalidate it.

The fix, step by step

  1. Boot into Safe Mode if you're bluescreening on every login. Hold Shift and click Restart, then choose Troubleshoot > Advanced options > Startup Settings > Restart > press 4. You should land on a desktop with 800x600 resolution and Microsoft Basic Display Adapter in Device Manager. That confirms the GPU driver is what's crashing.
  2. Disconnect every monitor except one. Literally unplug the DisplayPort and HDMI cables. The error is triggered by display topology, so step one is to flatten the topology to a single output. Boot with just the primary monitor attached and see if the desktop loads normally.
  3. Roll back the GPU driver in Device Manager. Right-click Start, pick Device Manager, expand Display adapters, right-click your GPU, choose Properties, go to the Driver tab, and click Roll Back Driver if it's available. If the Roll Back button is greyed out, skip to step 4. After the rollback finishes you should see a driver date that's older than the one that broke things — that's the confirmation.
  4. Run DDU to clean-install the GPU driver. Windows' uninstaller leaves registry keys behind that keep the old present-target behavior alive. Download Display Driver Uninstaller, boot to Safe Mode, and run it with "Clean and restart" for your GPU vendor. After the reboot, install the previous WHQL release — not the newest hotfix. For NVIDIA, that's usually the branch one version back. For AMD, the WHQL "Recommended" build, not "Optional."
  5. Disable Multi-Plane Overlay if you're on NVIDIA. MPO is a common trigger for present-target errors on multi-monitor rigs. Grab the NVIDIA MPO disable tool from the official forums, or set the registry value manually and reboot:
    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Dwm]
    "OverlayTestMode"=dword:00000005
    
    After the reboot, verify DWM is still running by opening Task Manager — you should see the Desktop Window Manager process using normal memory, not stuck at 0 MB.
  6. Update the game or app that's triggering it. If it's a specific title, check the vendor's patch notes for "multi-monitor present target" or "hot-plug" fixes. Several DX11 games shipped updates in 2023 specifically patching this. If no update exists, force the game to windowed borderless — that changes the swap chain type and sidesteps the cached target set.
  7. Run SFC and DISM to rule out a corrupted shim. Open an elevated Command Prompt and run:
    sfc /scannow
    dism /online /cleanup-image /restorehealth
    
    When SFC finishes you should see "Windows Resource Protection did not find any integrity violations" or a report of repaired files. If it repairs files, reboot before testing the game again.
  8. Check your display cable and port. A DisplayPort cable that's marginal will drop the link, cause the target set to be rebuilt, and crash the app mid-present. Swap to a different port on the GPU and a known-good cable. This sounds trivial; it isn't. I've fixed three machines this way.

If it still fails

Capture a kernel dump so you can see which module faulted. Run verifier /standard /driver yourgpu.sys in an elevated prompt, reboot, reproduce the crash, then open the resulting MEMORY.DMP in WinDbg with !analyze -v. Look at the FAILURE_BUCKET_ID — if it names a specific driver file, that's the smoking gun.

Also test with a single monitor at 60 Hz on the port the GPU firmware considers primary (usually the top-most DisplayPort). If the crash vanishes, you're dealing with a multi-monitor timing issue and the fix is a driver branch change, not Windows itself. And if you're on a laptop with hybrid graphics, disable the integrated GPU in BIOS temporarily to confirm the discrete driver is the one misbehaving.

Don't waste time running Windows Update or resetting the PC before you've done a clean DDU install. Nine times out of ten this error is a driver regression and no amount of OS repair will touch it.
Related Errors in Windows Errors
0X80280003 Fix TPM_E_BAD_PARAMETER 0x80280003 in Windows 10/11 0XC000022A STATUS_DUPLICATE_OBJECTID 0XC000022A Fix for Windows NTFS 0x800f0922 Windows Update Error 0x800f0922 – What Actually Fixes It 0XC00D1BC4 NS_E_INVALID_VIDEO_HEIGHT (0XC00D1BC4) fix – wrong height setting

Was this solution helpful?

EP
Erropedia Team
Tech Support Editors
The Erropedia editorial team researches and documents real-world tech errors from across Windows, Linux, macOS, networking, databases, cloud platforms, and more. Every solution is reviewed for accuracy and updated as software and systems evolve.