I had a computer at work that was running Windows XP SP3 and it got infected with a fake AV product. I ran MalwareBytes on the computer and cleaned up the infection. I thought everything was working until the person tried to print. They got a message that said:
“Before you can perform printer-related tasks such as page setup or printer a document, you need to install a printer. Do you want to install a printer now?”
If they clicked yes they would get a message that said:
“Operation could not be completed. The print spooler service is not running.”
We manually started the Print Spooler service, but it would fail every time we tried adding a printer.
The solution was to go to the registry and delete all the keys from HKEY_LOCAL_MACHINESYSTEMCURRENTCONTROLSETCONTROLPRINT except for the default entries which are LanMan Print Services and Internet Print Provider. After doing this I restarted the computer. After that the Print Spooler stayed running. However, things weren’t fixed yet.
I tried to install a Local Printer and tried to add a Standard TCP/IP port, but the option wasn’t there. So I had to go back to the registry and create a couple of Keys, Strings, and Dword entries following these steps. Leave out the quotation marks when typing the names and values.
- Open Regedit and navigate to HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlPrintMonitors
- Add a new Key named “Standard TCP/IP Port”
- Add a String Value under the new Key named “Driver” and set the value to “tcpmon.dll”
- Add another Key under Standard TCP/IP Port named “Ports”
- Add 3 DWORDs under Ports with the following values (values are in decimal):
- Name: LprActTimeout Value: 180
- Name: StatusUpdateEnabled Value: 1
- Name: StatusUpdateInterval Value: 10
- Then restart the computer.
I was now able to add a printer using a Standard TCP/IP Port.
Source 1: http://forums.techguy.org/windows-xp/998760-solved-print-spooler-keeps-stopping.html
Source 2: http://forums.techarena.in/windows-xp-support/1340004.htm