10.6 Printing Tweaks
The
paperless office is not yet upon us and may never be. Until it
finally arrives, you need to keep printing things, and if
you're using Windows 2000 or NT 4.0 you can improve your
printing experience with some minor Registry changes.
10.6.1 Keep the Print Spool Service from Popping Up Dialogs
The print
spooler has an annoying "feature" that causes it to
display a notification telling you when a print job has been
completed. I was delighted to find that you can stop it from doing so
by adding a new REG_DWORD named NetPopup to
HKLM\SYSTEM\CurrentControlSet\Control\Print\Providers. Give it a
value of
to suppress the alerts or 1 to re-enable them. After making this
change, you need to reboot, but you'll be free of print status
messages forevermore.
10.6.2 Change the Print Spool Directory
Windows 2000 and NT defaults to putting its
print spool directories on the system disk. If you have a small
number of print jobs, or a large disk, this may work fine; for disk
space or performance reasons, though, it may make more sense to move
your print spool directories to another volume. For example, networks
that include high-resolution color printers such as the Epson Stylus
1520 (which print 11"x 17" pages in 24-bit color: each page takes
several tens of megabytes of spool space!) can quickly overwhelm the
free space on a typical Windows 2000 or NT system disk. Although
Windows 2000 supplies a mechanism for modifying print server
properties (from the printer folder, FileServer Properties;
the Advanced tab holds the spool folder location), NT provides no
user interface for changing the spool locations; fortunately,
you're probably comfortable enough with the Registry so that
you don't need a user interface!
If you want to change the spool directory for a single printer on an
NT 4.0 system, you need to add a new value to
HKLM\SYSTEM\CurrentControlSet\Control\Print\Printers\<PrinterName>,
where PrinterName is the name you gave the
printer when you created its spooler entry. Name the new value
SpoolDirectory, and make it a REG_SZ. For this item's value,
supply the full local path to the spool directory. The spool
directory can't be a UNC path, and it must exist. Under Windows
2000, that Registry path is used as a backup for printer entries
under HKLM\SOFTWARE. To change the spool directory for a printer on a
Windows 2000 print server, add a new REG_SZ value SpoolDirectory to
HKLM\SOFTWARE\Microsoft\Windows
NT\CurrentVersion\Print\Printers\<PrinterName>.
Supply it with the full local path to the spool directory.
If you want to change the default spool used for any printer that
doesn't specify its own spool directory, you should add a
REG_SZ value named HKLM\SOFTWARE\Microsoft\Windows
NT\CurrentVersion\Print\Printers\DefaultSpoolDirectory for Windows 2000, or
HKLM\SYSTEM\CurrentControlSet\Control\Print\Printers\DefaultSpoolDirectory for NT. As with
SpoolDirectory, the path you specify here must be a fully qualified
local path, and it must exist before you make the change.
If you add either of these values, you need to stop and restart the
Spooler service. To avoid losing any queued print jobs, it's
best to make these changes only when your print queues are empty;
that keeps users from having to resubmit their jobs to get them into
the new spool directory.
10.6.3 Stop Print Job Logging in Event Log
Normally Windows 2000 and NT logs every
print job processed by a server in that machine's application
event log. Since for the most part these logs fall into the category
of "data no one will ever look at," you can configure the
spooler service to not make these log entries in the first place.
To suppress print job event log entries for errors, warnings, and
other information, add a new REG_DWORD value named
HKLM\SYSTEM\CurrentControlSet\Control\Print\Providers\EventLog and
give it a value of 0. As with all the other printing tweaks, this
change won't take effect until you stop and restart the Spooler
service.
|