The Registry contains printer information in these locations:
HKEY_CURRENT_USER\Printers
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet
\Control\Print
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet
\Control\Print\Printers
By default, this will apply to all printers. However, if you want to override the spool setting on a per-printer basis, add the value SpoolDirectory, type REG_SZ, and set it to the spool path for the printer under the following key:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet
\Control\Print\Printers\[printer name]
Restart the system for this change to take effect.
With the exception of spool directories, always use Print Manager to change configuration settings for all printers.
Values that control print spooling and other aspects of printer support are found in the following Registry path:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet
\Control\Print
DisableServerThread REG_DWORD 0 or 1
Set this to 1 (true) to disable the browse thread on the current machine. This thread is used to call other printer servers to notify them that this printer exists.
Default: 0 (false)
FastPrintSlowDownThreshold REG_DWORD Milliseconds
Default: FastPrintWaitTimeout divided by FastPrintThrottleTimeout
FastPrintThrottleTimeout REG_DWORD Milliseconds
When printing with spooling enabled, some printers pause if they don't recieve data for a timeout period (usually 15 seconds for a Postscript printer). To counteract this, the spooler throttles back on data sent to the printer when FastPrintSlowDownThreshold is reached. At that point, FastPrintThrottleTimeout causes 1 byte per defined period to be sent to the printer until the threshold defined by FastPrintSlowDownTheshold is exceeded.
Default: 2,000 (2 seconds)
FastPrintWaitTimeout REG_DWORD Milliseconds
When print spooling, the port thread must synchronize with the spooling application. This value determines how long the port thread waits before giving up, pausing the current print job, and moving to the next print job.
Default: 24,000 (4 minutes)
NetPrinterDecayPeriod REG_DWORD Milliseconds
Specifies how long to cache a network printer. The cache is used to present the list of printers when the browse dialog is used.
Default: 3,600,000 (1 hour)
PortThreadPriority REG_DWORD Priority
Allows you to set the priority of the port threads. These are the the threads that do the output to the printers.
Default: THREAD_PRIORITY_NORMAL
PriorityClass REG_DWORD Class
Sets the priority class for the spooler. 0 or no value indicates the default (7 for workstations, 9 for servers). Any other value becomes the priority class for the server.
Default: 0
SchedulerThreadPriority REG_DWORD Priority
Allows you to set the priority of the scheduler thread, which is used to assign jobs to ports.
Possible values are THREAD_PRIORITY_NORMAL, THREAD_PRIORITY_ABOVE_NORMAL, and THREAD_PRIORITY_BELOW_NORMAL.
Default: THREAD_PRIORITY_NORMAL
ServerThreadTimeout REG_DWORD Milliseconds
Specifies how long the server thread sleeps before calling all other print servers and notifying them of the printers on this machine.
Note that the default NetPrinterDecayPeriod on other machines is 1 hour; therefore, if ServerThreadTimeout is greater than 1 hour, other servers will forget about this printer when a browse dialog is displayed.
Default: 600,000 (10 minutes)
To control network popups for remote print jobs, add the value NetPopup to the key found in the following Registry path:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet
\Control\Print\Providers
NetPopup REG_DWORD 0 or 1
Specifies whether to display a popup message for remote print jobs.
Default: 1