0X0026231E: Graphics Adapter Mode Preference Bug
Windows can't pick a display mode because the monitor driver forgot to mark one as preferred. The fix is a registry tweak to manually set it.
You're staring at a black screen, or apps crash when trying to change resolution. The error code is 0X0026231E. I've seen this exact mess on Dell machines connected to external monitors, especially after a Windows update that swapped the display driver.
Let's cut the noise. The fix is a registry edit that tells Windows which mode should be the default. It's not hard—just precise.
Step-by-Step Fix
- Open Registry Editor — press Win+R, type
regedit, hit Enter. Say yes to UAC. - Navigate to the adapter key:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Configuration - Find your monitor's subkey — under Configuration, you'll see GUID-like folders (e.g.,
LGD02DD-7D8947D4-0-0). Expand each until you see a00subkey. Click on it. In the right pane, look forPreferredModeorDefaultMode. If it's missing, that's your problem. - Create a DWORD (32-bit) named
PreferredModeif it doesn't exist. Set its value data to0(decimal). This tells Windows to use the first mode in the list as preferred. If you want a specific resolution, set the value to a number matching the mode index—but 0 is safe. - Reboot. The error should vanish.
What's actually happening here is: The Windows Display Driver Model (WDDM) expects each monitor driver to flag one mode as "preferred"—usually the native resolution at 60Hz. If the monitor's EDID (Extended Display Identification Data) is corrupt, wrong, or missing this flag, Windows throws 0X0026231E because it's got a list of modes but zero guidance on which one to use.
The registry key PreferredMode overrides the missing EDID flag. Setting it to 0 tells the graphics stack: "Use the first mode in the enumeration order." That's usually 1920x1080 or 2560x1440 at 60Hz. It's a brute-force override, but it works because the mode list itself is valid—just unlabeled.
Why This Happens: The EDID Problem
The error 0X0026231E is almost always a corrupt or incomplete monitor EDID. I've seen it on:
- Dell U2415 monitors after a firmware update that broke EDID checksums
- HP laptops with external LG 27UK650 displays where the HDMI cable was faulty
- Custom PCs after installing the latest NVIDIA driver without removing the old one—the driver cached a bad EDID
The EDID is a 128-byte block of data the monitor sends over the display cable. It lists supported resolutions, timings, and—critically—the preferred mode flag (bit 1 in the detailed timing descriptor). If that flag is 0 for all modes, Windows sees a valid mode set with no leader, and the kernel-mode driver returns STATUS_GRAPHICS_NO_PREFERRED_MODE, which maps to 0X0026231E.
Less Common Variations
Sometimes the registry key doesn't stick, or you need a different approach:
- GPU driver reset — Uninstall the graphics driver with DDU (Display Driver Uninstaller) in Safe Mode, then reinstall the latest clean version. This flushes any cached corrupt EDID from the driver's store.
- Custom resolution tool — Use CRU (Custom Resolution Utility) to manually edit the monitor's EDID and set a preferred mode at the driver level. This is more invasive but permanent.
- HDMI vs. DisplayPort — Some monitors only send the preferred mode flag over DisplayPort. If you're stuck on HDMI, try switching to DP. I've had a Samsung S27R350 that only worked over DisplayPort because its HDMI EDID was truncated.
How to Prevent This
Three things stop this error from returning:
- Keep monitor firmware up to date. Manufacturers like Dell and LG release EDID fixes. Check support pages every few months.
- Use quality cables. A bad HDMI 2.0 cable can corrupt EDID reads. Stick to certified cables (the ones with the QR code hologram).
- Clean-install GPU drivers. Never use the "upgrade" option for NVIDIA or AMD. Always use DDU first. The upgrade path keeps old EDID caches that can trigger this error after a Windows update changes the display stack.
Was this solution helpful?