Quick answer
Delete the printer, remove the driver, and reinstall the latest driver from the manufacturer's site. Then restart the spooler.
Why this happens
The 0X00000878 error, also known as NERR_ProcNotFound, means Windows can't find the print processor DLL that the printer driver needs. The print processor is the component that handles the raw data before it goes to the spooler. When it's missing, the spooler throws this error. Most times the culprit is a botched driver update or a leftover registry entry from an uninstalled printer. I've seen it after Windows updates, too, especially on Server 2016 and Windows 10 1809.
Don't waste time checking the spooler service first. It's usually running. The real fix is cleaning out the driver and reinstalling it. But sometimes that's not enough — the registry holds orphaned entries pointing to non-existent DLLs.
Fix steps
- Stop the spooler. Open an elevated Command Prompt and run:
net stop spooler - Delete the printer. Go to Devices and Printers, right-click the offending printer, and select Remove device. If it won't delete, use
printui /sand remove it from the Drivers tab. - Remove the driver. In the same printui /s window, find the driver under the Drivers tab, select it, and click Remove. Choose Remove driver and driver package.
- Clean the registry. Open
regeditand go toHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Environments\Windows x64\Print Processors. Look for any key that references the missing driver's processor (likewinprintor a vendor-specific one). If you see a key that doesn't belong, export it as backup and delete it. - Restart the spooler. Run:
net start spooler - Reinstall the driver. Download the latest driver from the printer manufacturer's site. Don't use Windows Update — it often serves old or generic drivers. Install it, then add the printer again.
Alternative fixes
If the above doesn't work, try these.
Run the print spooler troubleshooter
It sounds basic, but Microsoft's built-in troubleshooter can fix permissions or service misconfigurations automatically. Go to Settings > Update & Security > Troubleshoot and run Printer. It's a long shot but takes two minutes.
Manually register the print processor DLL
If the driver's DLL is present but not registered, run this in an elevated command prompt:
regsvr32 "C:\Windows\System32\spool\drivers\x64\3\yourprocessor.dll"Replace yourprocessor.dll with the actual file name. You can find it by checking the driver's Print Processor setting in printer properties.
Check the Print Processor setting
Right-click the printer, go to Printer Properties > Advanced > Print Processor. Make sure it's set to winprint unless the driver specifically requires something else. Some drivers install custom processors but fail to copy them correctly.
Prevention tip
Always uninstall printers using the manufacturer's uninstaller, not just Remove device. That clears out the processor. Also, avoid updating drivers from Windows Update — it's fine for generic devices but breaks vendor-specific processors. Stick to the manufacturer's site or a reputable driver updater. And before a major Windows feature update, uninstall the printer driver, then reinstall after the update. That saves you from these registry orphans.
If you're on a network with multiple printers, check all of them. I've seen one bad driver take down the whole spooler on a print server. In that case, you'd need to clean up every driver entry on the server.
That's it. The error is annoying but fixable in under fifteen minutes. Start with the driver reinstall — that solves 80% of cases. If it doesn't, the registry cleanup usually does.