Thoughts from the EPS Windows Server Performance Team
Useful Microsoft Blogs
Good morning AskPerf world! Jeff Hagler from the Performance team here to chat about printing. How many of you have ever dealt with an issue where you just knew that something was wrong with your print spooler but could not quite put a finger on it? Maybe print jobs were slow, certain users could print to some printers but not others, or maybe nobody could print at all?
Back in the day, we included a tool with the Windows 2003 Resource Kit called Cleanspl that was able to make sure that the spooler service was configured correctly and clear of any third party dependencies that may be referencing bad/missing files. Cleanspl is a great tool, but by being hidden in the resource kit, it was rarely used. Up until now, this tool did not exist/work in recent Operating Systems like Windows Server 2008..
We are happy to announce the same functionality in Cleanspl (and a bit more) has been built into one of our Fixits that will run on Windows XP/2003 and Windows Vista/2008 and can be downloaded from Fixit 9662904.
*UPDATE* As of today (4/24/2013), the Fixit for Windows 7 and Windows Server 2008 R2 is now available!
Direct link to Print Reset Full Mode - http://go.microsoft.com/?linkid=9829711Direct Link to Print Reset Lite Mode - http://go.microsoft.com/?linkid=9829710
Related KB Article:
You experience Print Spooler error messages after installing or upgrading a Third-Party print driverhttp://support.microsoft.com/kb/2793718
Please Note: All applications must be shut down before running the Fix It Solution. Some applications will open a handle to the print spooler when running and this will prevent any cleanup from occurring. The Fix It Solution will not shut down any applications before the cleanup to prevent loss of data.
This Fixit package consists of two modes: Light and Full. Light will make changes to the spooler that should not require your end user to make any changes, while the Full mode will restore the print spooler to defaults and will require a complete reinstall of your print drivers and printers. Think of the Light version as something you can run on any system (print server, terminal server, normal client system) as a first troubleshooting step, and the Full version as something to reserve for systems that get their printers and print drivers pushed down from Print Servers (via Group Policy and Point and Print). Let’s cover the key part of the previous statement again for Fixit 9662904 – do not run the Full version on a Print Server as it will delete all the printers. Basically, it puts your Print Environment back to the way it was when the OS was installed.
When you first run the Fixit on your system, you will be prompted with the normal installation/licensing agreement screens. You will then receive the dialog box below. To run the Light version, just click Next. To run the Full version, you will need to check the box to “Reset the print spooler to defaults”.
Note the Light version does not require a reboot but the Full version does. Again, do not run the Full version Fixit 9662904 on a Print Server as it will delete all the print drivers and print queues
Here are the details on what actually happens during each of these cleanups:
As you can see the light mode of this tool is a great first pass at troubleshooting a myriad of Print Spooler issues, with minimal risk/downtime for your users. Give it a go and let us know how it works for you.
UPDATE 4/16 : The tool (WIN7/2008-R2) has been tested, and is in the final approval stage. I will update this blog when it is ready. Thanks for your patience!
@All: Windows 7 & Windows Server 2008 R2 Fixits are now live!
@Blake Morrison - MSFT
Thanks a ton Blake and MSFT !!!
I need that Fix for Windows 8. Would be nice.
Is it possible?
Thanks very much for making these useful Fixits available.
Is a tool like this also becoming available for Windows Server 2012?
The KB article stats that this is not supported if you have the Print Role installed which would be installed on all print servers. I ask as i was thinking about using this as part of a clean upgrade procedure. The reason is it seems like no matter what upgrading universal print drivers from HP tends to cause issues.
1) export all queues on the print server via powershell script
2) Run this fixit to delete all queues / drivers leaving the server back at the default
3) Instal the new Print driver say HP universal xxx
4) Run a powershell script to recreate all the queues from the export in step 1
@gabbermorph & @Jeroen: As of right now, there is nothing on the table for this fixit for Windows 8 and/or Windows Server 2012. As always, we will update this blog if any thing new comes available. Thanks!
Today, I tried both lite and full versions of the latest fixit on my Win 2008 R2 SP1 server ( Powershell 2.0 , Print role not installed) and it doesn't seem to be working. I mean, the tool didn't removed the drivers or ports or printers, it just says that Microsoft Fixit has been processed. Please share , if anyone has experienced the same issue.
Today, I tried the full versions of the latest fixit on my Win 2008 R2 SP1 Terminalserver and it doesn't seem to be working. The tool didn't removed the drivers or ports or printers, it just says that Microsoft Fixit has been processed. Please share , if anyone has experienced the same issue.
Dear MS Team,
Appreciate for any information or assistance, that you can provide me to make this tool work. I have committed myself to perform an activity and just need this tool now to keep going. Meanwhile, if there are any manual workarounds to reset theprint spooler to defaults, pls share.
Thanks folks. We will investigate.
I have some more information to add to the last few posts reguarding the full version. I ran this on a windows 7 SP1 desktop and my results are below
Before we started this is how my queues and drivers on the machine were configured before the rull was run
1) Xerox printer using GPD 2.1 PS on a Queue
2) HP printer using HP UPD 5.4 PCL6 on a queue
3) HP Printer using HP Laserjet 8000 PCL6 Native driver on a queue
4) Also there was an old HP UPD 5.3 PCL6 driver on the workstation with no queue connected
I run the full and it removes all the printers and and continually refresh the devices and printers window. Shortly after the 3 queues that were mapped before it was run get readded to the workstation.
When i check the drivers on the workstation i now only see the GPD 2.1, HPD 5.4 and Laserjet 8000 PCL6 Driver. So it looks like it removes things but leaves some rediual remnants of the queue and then when the queue tries to connect it redownloads the drvers from the print server.
To further test this theory i then deleted the HP Laserjet 8000 queue and ran the script again.
Again the queues were removed but shortly returned. After it was complete the only drivers on the workstation were the Xerox GPD 2.1 PS and the HP UPD 5.4.
So it appears like my initial theory may be correct. I was under the impression that this full would remove all the drivers, queues, reg keys etc and the desktop would be back at square one with nothing on the box requiring you to have a fresh start and having to manually remap the queues connect to the printers and pull down a fresh driver.
Any update on the fixit tool for Win 2008 R2?