0X800F020C

Fix SPAPI_E_CANT_LOAD_CLASS_ICON (0x800F020C) in Device Manager

Windows Errors Intermediate 👁 3 views 📅 Jun 2, 2026

This error means Windows can't load the icon for a device class. Usually a corrupted icon cache or registry key. Quick fix: delete icon cache and rebuild driver store.

Quick answer

Delete %LocalAppData%\IconCache.db, restart, then run pnputil /reboot-device from an admin command prompt. If that doesn't do it, check the registry key HKLM\SYSTEM\CurrentControlSet\Control\Class for missing or wrong icon path values.

What's going on here

This error pops up when Windows tries to load a device class icon—like the little monitor for a display adapter or the network icon—and can't find it or can't read it. I've seen this most often after a Windows update or driver install that corrupted the icon cache. Had a client last month whose entire print queue died because of this—printer class icon was missing, and Windows refused to enumerate the devices. The error code 0x800F020C lives in the setupapi.log file when Device Manager fails to load the icon resource from the setupapi.dll or the class registry key points to a non-existent file.

Step-by-step fix

Step 1: Kill Explorer and delete the icon cache

  1. Open Task Manager (Ctrl+Shift+Esc).
  2. Find Windows Explorer, right-click it, and select End task. Your taskbar and desktop icons disappear—that's normal.
  3. Click File > Run new task, type cmd, and check Run as administrator.
  4. Run these commands:
cd /d %LocalAppData%
del /f /q IconCache.db
  1. Now restart Explorer: in the same command prompt, type start explorer.

If the icon cache was corrupted (which it usually is), this alone might fix it. But don't stop here—you also need to refresh the driver store.

Step 2: Rebuild the driver store cache

  1. In the same admin command prompt, run:
pnputil /reboot-device

This forces Windows to reload all device class icons from the driver packages. It can take a minute or two. You might see some driver installation popups—that's fine.

Step 3: Check the registry for broken class keys

If the error persists, the class registry key probably points to a missing icon file. Open Regedit (run as admin) and go to:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class

Under each GUID (like {4d36e968-e325-11ce-bfc1-08002be10318} for display adapters), look for these values:

  • Icon – should be a number like -5 or 0
  • Class – text name like "Display"
  • ClassIconPath – path to a .dll or .ico file

If ClassIconPath is missing or points to a nonexistent file, delete that value (or fix the path). For printers, the default path is %SystemRoot%\system32\spool\drivers\color\printui.dll—if that file is missing, you've got bigger problems, but try a sfc /scannow.

Step 4: Re-register the device class

Sometimes the class itself gets unregistered. Run this from admin PowerShell:

Get-WmiObject Win32_PnPEntity | ForEach-Object { $_.GetRelated('Win32_DeviceClass') } | Select-Object Name, Guid | Format-Table

If a class is missing, you can re-register it by running:

regsvr32 /s setupapi.dll

Then restart.

If the main fix doesn't work

Alternative 1: System File Checker

Run sfc /scannow from admin command prompt. This replaces corrupted system files. I've seen it fix the icon loader in setupapi.dll itself.

Alternative 2: DISM restore health

If SFC fails, run:

DISM /Online /Cleanup-Image /RestoreHealth

This fixes the component store, which is often the root cause for icon cache issues after updates.

Alternative 3: Delete the class GUID key (advanced)

If you're absolutely sure which device class is broken (e.g., printers), you can delete the entire GUID key under Class and let Windows recreate it on next boot. Backup the key first! Right-click it, export, then delete. Reboot and Windows will rebuild it from driver files.

Prevention tips

To avoid this coming back:

  • Don't install third-party icon packs that replace system icons—they often break the cache.
  • Run Windows Update regularly but test updates on a spare machine first. Had a client who skipped updates for 8 months, then got this error on every device class.
  • Clean up driver packages with pnputil /enum-drivers and delete old ones you don't need. Too many stale drivers can corrupt the class icon index.
  • Use a restore point before major driver changes. This error is almost always triggered by a bad driver install or update.

That's it. 9 times out of 10, deleting the icon cache and running pnputil /reboot-device does the job. If not, check the registry path—someone's probably mangled a class key. Don't overthink it.

Was this solution helpful?