I had a DLink router with a print server to which my printer was attached. I got a new TP-Link router and tried to set up the print server there, but after a number of unsuccessful attempts, ended up setting it up on an ethernet port on the router.
In the process, somehow my print spooler has gotten messed up. In Settings, the printer shows up as 'driver is unavailable' (I did install the driver). If I try to add a new printer, I get 'Windows can't open Add Printer. The local print spooler service is not running. Please restart the spooler or restart the machine.'
I've tried both restarting the spooler and rebooting the machine, but the problem persists.
I ran services.msc and it shows the print spooler with a startup type as automatic but the service status is stopped. Started it again, it says it's running, I go back to add printer, get the 'can't open Add Printer' message again. Rerun services.msc, and it shows the spooler as no longer running.
I got copies of spoolsv.exe and spoolss.dll from another computer where printing is working, but even though I'm an administrator, I can't replace the old copies, and I can't seem to do anything to change that. I've tried running netplwiz, but it won't let me change any of the permissions.
Right now I'm out of ideas on what to try next. Printing works fine from two other computers on the network, just not on this one.