StressPrinters: Stressing Printer Autocreation

Printer drivers are great source of crash dumps especially in Citrix and Microsoft terminal services environments. Bad printer drivers crash or hang spooler service (spoolsv.exe) when multiple users connect to a server.

Most of bad drivers were designed and implemented for use in a single user environment without considering multithreading in mind. Some bad drivers display a dialog box every time the printer is created and because this is done on a server side users cannot dismiss it unless spooler service is configured to interact with the desktop and an administrator sees the dialog box. Some drivers are linked to a debug run-time library and every exception brings up a dialog effectively hanging the thread and sometimes the whole spooler service if there was heap corruption, for example.

Therefore before allowing terminal services users to use certain printers it is good to simulate multiple users trying to create particular printers to determine bad drivers and other printer components. Originally Citrix had very popular command line AddPrinter tool for this purpose and it has been replaced by StressPrinters tool where I designed and implemented GUI to set parameters, orchestration of multiple AddPrinter command line tools launched simultaneously with different parameters and overall log file management. You can even export your settings to a file and import it on another server. The tool also has 64-bit executables to test printer autocreation on x64 Windows.

Here are some screenshots:

The tool detects spooler crashes (if spoolsv.exe suddenly disappears from a process list) so you can check for crash dumps saved if you set up a default postmortem debugger (Dr. Watson or NTSD). If you see the progress bar hanging for a long time then you can dump the spooler service using MS userdump.exe to check for any stuck threads and resource contention.

You can register for free to read documentation and download this tool from Citrix support web site:

StressPrinters 1.2 for 32-bit and 64-bit platforms

- Dmitry Vostokov -

4 Responses to “StressPrinters: Stressing Printer Autocreation”

  1. Dmitry Vostokov Says:

    The new version 1.3.1 is available:

    StressPrinters 1.3.1

  2. Crash Dump Analysis » Blog Archive » StressPrinters in press Says:

    […] Koetzing wrote a useful article on how to use StressPrinters and put some […]

  3. Dmitry Vostokov Says:

    New version of StressPrinters tool is available:

    StressPrinters 1.3.2

  4. Crash Dump Analysis » Blog Archive » HP uses StressPrinters for print driver stress testing Says:

    […] recent news about StressPrinters tool designed according to Tool Façade DebugWare […]

Leave a Reply

You must be logged in to post a comment.