STATUS_NOT_SAFE_MODE_DRIVER 0XC000035F Fix
Driver won't load in Safe Mode. Happens when Windows blocks non-Microsoft drivers. Fix by disabling Safe Mode or editing boot config.
When This Error Hits
You're booting Windows 10 or 11, and right after the spinner, you get a blue screen or a black screen with the error: STATUS_NOT_SAFE_MODE_DRIVER (0XC000035F). The system says "The driver was not loaded because the system is starting in safe mode." This usually happens if you've previously booted into Safe Mode to troubleshoot something (a bad update, a failing driver, malware cleanup), and now Windows is stuck in Safe Mode or refuses to load a critical third-party driver like your GPU driver, a RAID controller driver, or a VPN virtual adapter. The real trigger is almost always a misconfigured boot flag in the Boot Configuration Data (BCD) or an incomplete switch back to normal mode.
Root Cause
What's actually happening here is that Safe Mode restricts driver loading to only Microsoft-signed drivers. Third-party drivers—your NVIDIA or AMD graphics driver, a storage controller driver from your motherboard vendor, or a security software driver—are blocked. The error code 0XC000035F means the driver's entry point returns STATUS_NOT_SAFE_MODE_DRIVER, which is the driver's way of saying "I'm not allowed to run in this mode." The system was booted with the /SAFEBOOT flag active, either because you selected Safe Mode from the boot menu and it never cleared, or because the BCD entry is corrupted. This isn't a faulty driver—it's a boot mode mismatch.
The Fix: Step-by-Step
Step 1: Boot into Normal Mode via msconfig
- Restart your PC and press F8 (or Shift + Restart from the login screen) to open the Advanced Startup Options menu.
- Select Troubleshoot > Advanced Options > Command Prompt.
- In the Command Prompt, type:
bcdedit /deletevalue {current} safebootand press Enter. - Then type:
bcdedit /set {current} bootmenupolicy standard(this ensures you see the normal boot menu). - Close the window and click Continue to exit and restart.
The reason step 3 works is it removes the safeboot parameter from the BCD entry. If Safe Mode was set via msconfig (System Configuration), this clears it. Skip the GUI route—msconfig often leaves residual flags. Directly editing BCD is more reliable.
Step 2: Verify Boot Mode in Windows
- Once booted normally, open Command Prompt as admin (right-click Start, select Command Prompt (Admin)).
- Run:
bcdedit /enum {current}and look for the line that sayssafebootorsafebootalternateshell. If either exists, runbcdedit /deletevalue {current} safebootagain. - Also check
msconfig: press Win + R, typemsconfig, go to the Boot tab. Uncheck Safe boot if it's selected. Apply and restart.
Step 3: Disable Driver Signature Enforcement (if the driver still fails)
- Restart and press F8 before Windows loads (or use Shift + Restart).
- Go to Troubleshoot > Advanced Options > Startup Settings > Restart.
- After restart, press 7 (or F7) to select Disable driver signature enforcement.
- Log in and reinstall the problematic driver (e.g., your GPU driver) from the manufacturer's website.
This is a temporary workaround. If the driver works after this, it means the driver is unsigned or has a test signature. You'll need to either sign it permanently or use a different driver version that's properly signed.
Step 4: Repair Boot Configuration (if steps 1-3 fail)
- Boot from a Windows installation USB or recovery drive.
- Select Repair your computer > Troubleshoot > Advanced Options > Command Prompt.
- Run these commands in order:
bootrec /fixmbr bootrec /fixboot bootrec /scanos bootrec /rebuildbcd - If
bootrec /fixbootgives an Access denied error, run:bootsect /nt60 sys /mbrand retry. - Restart and boot normally.
This rebuilds the BCD store from scratch. It nukes any corrupted boot entries that might be forcing Safe Mode. The /fixboot command specifically rewrites the boot sector, which can clear leftover Safe Mode flags that BCD edits miss.
If It Still Fails
Check three things:
- Is the driver actually safe-mode compatible? Some older drivers (pre-Windows 10) don't include a Safe Mode load routine. Replace it with a newer version from the hardware vendor.
- Are you dual-booting Linux? The Linux bootloader (GRUB) sometimes passes wrong flags to Windows. Boot directly into Windows from UEFI firmware menu (F2/F12 at startup) instead of through GRUB.
- Do you have a registry block? Open Registry Editor (regedit), go to
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SafeBoot. If the driver's service name appears underMinimalorNetwork, delete it. That forces Windows to load the driver in Safe Mode—but only do this if you're certain the driver is safe.
If none of this works, unplug all non-essential USB devices (webcams, external drives, dongles) that might have their own drivers. I've seen a cheap USB-to-Ethernet adapter's driver trigger this error because it couldn't load in Safe Mode. Pulling it fixed the boot loop instantly.
Was this solution helpful?