Backtrack:  
 
by lunarg on June 30th 2010, at 18:04

Ever so often, owners of a HP Laserjet 1020 or 1022 may run into a problem with the print spooler crashing over and over for no apparent reason. Restarting the spooler causes an immediate crash, and the only way to get rid of the problem is by removing (sometimes by force) all printers. The observant type has already noticed (the title of this post says it all) that the common dominator is indeed the 1020/1022 printer, and that the problem usually occurs upon attempting to print one or another PDF document.

In truth, the problem is caused by newer versions of the HP Host-based printer driver. For some reason, a part of the HP driver crashes upon parsing certain PDF documents (usually scanner-generated PDF files), and thus, causes havoc on the printer spooler. Because of the print spooler crash, a lot of programs (like MS Office) will start to act very erratic.
Error messages and events in the eventlog are not all alike: depending on the Windows version, driver version and the actual document being printed, there are numerous different errors. Sometimes the faulting module ZSR.DLL is shown, sometimes only some arbitrary error codes are displayed.

Resolving the issue: what does not work?

Rebooting the computer obviously does not work, at least not until you clear the printer queues. Then, the problem is temporarily resolved, until the next PDF that comes along.
Trying a different driver is pointless: it is a host-based driver after all, designed specifically for the printer... and vice-versa: using another real PCL driver does not work at all, because the printer does not understand anything your computer is trying to tell. Updating the driver is not an option either: the problem does not disappear, or it gets even worse. Contacting HP about it is only met with ear-deafening silence.
Reinstalling the driver and printer completely temporarily resolves the issue, again until the next afflicted PDF shows up.
Upgrading Acrobat Reader with all of its updates may seem to work, but really, it doesn't.

When printing a test page, you see a page similar to the one listed here (bad.jpg).

The real solution

  1. First of, clear out any sign of the current HP 1020/1022 driver by removing it from the print spooler. If necessary, use the steps described in this KB: http://support.microsoft.com/kb/324757. It may be necessary to remove all printer drivers before advancing (though I did not have to go that far).
  2. Find your original CD, or download the Full Driver package and unpack it. Do not run the installer!
    To make sure you have the right driver, check the contents of the unpacked driver for the existence of zsr.dll; if it exists, it's the wrong version and won't fix the problem.
  3. Like I said, do not run the installer, but plug in your printer and install it the old-fashion way (the Have drivers buttons, then navigate to the unpacked driver folder).
  4. If necessary (in case you have removed all other drivers), install any other drivers you require.
  5. Try printing a test page with the new driver. You should see a page similar to the one in the attachment list (good.jpg).