90% of the print spooler crashes I have seen are caused by 3rd party port monitors...
To remove 3rd party port monitors, you need to do some registry editing. First go to HKLM\system\CurrentControlSet\ and backup the PRINT key.
Go to this registry key:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Monitors
These are the port monitors that are included in Windows. Do not touch these:
BJ Language Monitor
Local Port
PJL Language Monitor
Standard TCP/IP port
USB Monitor
Microsoft Document Image Writer Monitor (sometimes this one isn't there)
You might see instances of 3rd party monitors like the HP Master Monitor or 5si monitor. Go into any key that is not in my previous list and look for the driver value. Write this value down. Once you have written that value down (it will be a .dll file) delete the entire 3rd party port monitor key (remember, do not delete the keys I mentioned above)
Now go to this key:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Environments\Windows NT x86
You will see 1 to 3 subkeys. They will be Version0, Version 2, and Version3.
Version 0: 9x printer drivers
Version 2: NT4 print drivers that operate in Kernel mode memory
Version 3: Win2k/NT4/XP/Win2k3 print drivers that operate ONLY in User mode.
In these keys, you will see different printer drivers. Open those keys and look for the "Monitor" value. There MAY be a .dll file listed in the monitor value.
IF that .dll file matches one from the list that you wrote down, erase it from the Monitor value. Do not delete the monitor value.
Do this for all drivers in all version subkeys....
Restart the print spooler....
If a port monitor was causing your problem, then it should be resolved.
Port monitors for printers give you functions like telling you how many pages are left in a printer drawer. They are not required for printing (except the ones mentioned in the begining)
If this doesn't resolve your issue, you'll need to get a user dump of the spooler and run it through a debugger. That will tell you what file caused it to crash...
Dr Watson should also be set to capture a user dump. Make sure that it is by clicking START>RUN and running the command "drwtsn32 -i" (without the quotes)
The following link will tell you about another utility called Userdump.exe. which you can use if Dr Watson doesn't capture the spooler crash...
Good luck!