The two solutions to this that seem to have the most success are (1) replacing the registry keys associated with the Print Spooler and (2) ensuring that spoolsv.exe and spoolss.dll are not corrupted. I've also seen one site that suggested changing the NTFS
permissions for spoolsv.exe and spoolss.dll as well as for the registry keys, but the suggested changes didn't make total sense.
The first thing you can do, which should have no adverse side effects, is to check for the integrity of your system files.
Open an Elevated Command Prompt (click Start Orb, type cmd.exe, right-click on the link to cmd.exe and select "Run as administrator)
Type the following command and press Enter
sfc /scannow
Report what happens at the end of the scan.
As far as the registry is concerned, before doing anything, create a manual System Restore point. You can use this to restore the registry if you don't like what happens after you make changes.
http://www.dummies.com/computers/operating-systems/windows-7/how-to-create-a-system-restore-point-in-windows-7/
The usual method used to fix the registry is to run a *.reg file rather than running regedit.exe and making the changes manually. Unfortunately, if you look at the contents of a *.reg file using, e.g., Notepad, it doesn't look exactly like the registry
looks if you examine the registry using regedit.exe.
I'm going to first include a number of screenshots from the registry of a working Windows 7 system so you can examine your registry using regedit.exe. If your registry does not look like the screenshots, you have 3 options: (1) make changes manually to
conform to the screenshots, (2) run the *.reg file that I'll give you, or (3) report the differences between your registry and the screenshot for further, detailed instructions.
The registry key at issue is HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Spooler and its two subkeys. You can examine your registry by clicking Start, typing regedit.exe and pressing Enter. Then start at the top and navigate to
the key.
If your registry does not look like the screenshots, open a blank Notepad window, copy the text below from between the lines of asterisks, and paste into Notepad. Use "Save as" to save the file. Make sure that "Save as type" is set to "All files (*)" rather
than "Text Documents (*.txt)" and give the file a name that ends with .reg (for example FixSpool.reg). Save the file to an easy to find location, for example, your Desktop.
After the file is saved, right-click on it and select Merge.
*******************************************************************************
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Spooler]
"DisplayName"="@%systemroot%\\system32\\spoolsv.exe,-1"
"Group"="SpoolerGroup"
"ImagePath"=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,\
74,00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,73,\
00,70,00,6f,00,6f,00,6c,00,73,00,76,00,2e,00,65,00,78,00,65,00,00,00
"Description"="@%systemroot%\\system32\\spoolsv.exe,-2"
"ObjectName"="LocalSystem"
"ErrorControl"=dword:00000001
"Start"=dword:00000002
"Type"=dword:00000110
"DependOnService"=hex(7):52,00,50,00,43,00,53,00,53,00,00,00,68,00,74,00,74,00,\
70,00,00,00,00,00
"ServiceSidType"=dword:00000001
"RequiredPrivileges"=hex(7):53,00,65,00,54,00,63,00,62,00,50,00,72,00,69,00,76,\
00,69,00,6c,00,65,00,67,00,65,00,00,00,53,00,65,00,49,00,6d,00,70,00,65,00,\
72,00,73,00,6f,00,6e,00,61,00,74,00,65,00,50,00,72,00,69,00,76,00,69,00,6c,\
00,65,00,67,00,65,00,00,00,53,00,65,00,41,00,75,00,64,00,69,00,74,00,50,00,\
72,00,69,00,76,00,69,00,6c,00,65,00,67,00,65,00,00,00,53,00,65,00,43,00,68,\
00,61,00,6e,00,67,00,65,00,4e,00,6f,00,74,00,69,00,66,00,79,00,50,00,72,00,\
69,00,76,00,69,00,6c,00,65,00,67,00,65,00,00,00,53,00,65,00,41,00,73,00,73,\
00,69,00,67,00,6e,00,50,00,72,00,69,00,6d,00,61,00,72,00,79,00,54,00,6f,00,\
6b,00,65,00,6e,00,50,00,72,00,69,00,76,00,69,00,6c,00,65,00,67,00,65,00,00,\
00,53,00,65,00,4c,00,6f,00,61,00,64,00,44,00,72,00,69,00,76,00,65,00,72,00,\
50,00,72,00,69,00,76,00,69,00,6c,00,65,00,67,00,65,00,00,00,00,00
"FailureActions"=hex:80,51,01,00,00,00,00,00,00,00,00,00,03,00,00,00,14,00,00,\
00,01,00,00,00,60,ea,00,00,01,00,00,00,60,ea,00,00,00,00,00,00,00,00,00,00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Spooler\Performance]
"Close"="PerfClose"
"Collect"="PerfCollect"
"Collect Timeout"=dword:000007d0
"Library"="winspool.drv"
"Object List"="1450"
"Open"="PerfOpen"
"Open Timeout"=dword:00000fa0
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Spooler\Security]
"Security"=hex:01,00,14,80,78,00,00,00,84,00,00,00,14,00,00,00,30,00,00,00,02,\
00,1c,00,01,00,00,00,02,80,14,00,ff,01,0f,00,01,01,00,00,00,00,00,01,00,00,\
00,00,02,00,48,00,03,00,00,00,00,00,14,00,8d,01,02,00,01,01,00,00,00,00,00,\
05,0b,00,00,00,00,00,18,00,ff,01,0f,00,01,02,00,00,00,00,00,05,20,00,00,00,\
20,02,00,00,00,00,14,00,fd,01,02,00,01,01,00,00,00,00,00,05,12,00,00,00,01,\
01,00,00,00,00,00,05,12,00,00,00,01,01,00,00,00,00,00,05,12,00,00,00
*********************************************************************************************************