tllcurv.gif (1047 bytes)  

 

 

 

 

 

Home

Free Downloads

Product FAQs (NT)

Product FAQs (OpenVMS)

Product Alerts

Technical References

Links

brlcurv.gif (1043 bytes)

The Registry 5: Control\Print

In this article we cover the registry entries at HKEY_LOCAL_MACHINE\SYSTEM \CurrentControlSet \Control \Print. Most of these values are controlled through Control Panel \Printers,but there are a few which you may want to modify manually. Changes in this area almost always require a rebootto take effect.

Caution: Editing the registry can be extremely dangerous and candisrupt your system to the point where your only option is to re-install Windows NT.

Refer to the article Registry:Basics for information on safe handling of the registry.

Convention: Keys and Sub-keys are bold-face ( \ComputerName );value entries are in italics ( ComputerName ). Also, note that some of these variables may not appear in yourregistry; they can be added if needed, but make sure you spell and capitalize them correctly.

The Print Key

Here we have the data pertinent to your printers. There will be sub-keysfor DLLs and drivers that are neccesary for the printers and print spoolers, and possibly sub-keys installed byOEMs.

The \Environments Sub-key

Here you will find several environment, or operating system, descriptions.For example, on one of our machines, we have:

\Windows 4.0

\Windows NT Alpha_AXP

\Windows NT PowerPC

\Windows NT R4000

\Windows NT x86

Each of these sub-keys contains a value entry Directory whose value is the driver directory. In \Windows NT X86 this value is W32X86. There are also two sub-keys.

\Drivers: For each printer that you have configured on thissystem, there will be one or more sub-keys. They will contain value entries for data that applies to the printer,such as the names of the configuration files and driver DLLs. The files will reside under the driver directorymentioned in the prior paragraph.

\Print Processors: This contains a value entry Driver whose value is the name of the print DLL.

The \Monitors Sub-Key

\Local Port: Driver , REG_SZ. Containsthe name of the local monitor DLL.

\PJL Language Monitor: PJL stands for Printer Job Language.This sub-key contains the value entries Driver , whose value is the PJL DLL file name, and EOJTimeout ,REG_DWORD, whose value is the number of milliseconds to End-of-Job timeout.

\Provider Network Port contains the value entry Driver, whose value is the name of the DLL for the print monitor. It also has a sub-key \Options whichcontains several value entries defining connection, buffers, timers, etc.

The \Printers Sub-Key

\Printers has no sub-keys, but several useful value entries.

DefaultSpoolDirectory, REG_SZ. This is the path to the defaultprint spooler directory, used by all of the printers. If you want a particular printer to use a different spoolerdirectory, add the following value entry:

SpoolDirectory, REG_SZ. Enter the path to your alternate printspooler directory. Note that if you misspell the path, or the directory does not exist, the default print spoolerwill still be used.

JobPrintsWhilstSpooling , REG_DWORD, 0=disabled, 1=enabled.See below.

FastPrintWaitTimeout , REG_DWORD, Default 24,000 ms.This is the time the port thread will wait for data. If it times out, the print job will be paused and the nextprint job will start. NOTE: If JobPrintsWhilstSpooling is enabled, the port thread must synchronize withthe spooling application.

FastPrintSlowDownThreshold, REG_DWORD. Default: FastPrintWaitTimeout divided by FastPrintThrottleTimeout . If JobPrintsWhilstSpooling is enabled,your printer may pause if no data is received for a specified period. FastPrintSlowDownThreshold is used to preventthis pause.

FastPrintThrottleTimeout , REG_DWORD, Default: 2,000ms. When the FastPrintSlowDownThreshold is reached, the print spooler cuts the speed at which it sends data,so that there will not be a long enough period between data packets to allow the printer to pause.

NetPrinterDecayPeriod , REG_DWORD, Default: 3,600,000 ms (1hour). There is a list of printers available to the browser. This value specifies how long a network printer willbe kept on that list.

The last three value entries set the priorities for printing. Theyare all REG-DWORD and default to 0 (Normal), but can be set to 1 (High) or 0xFFFFFFFF (Low).

PortThreadPriority: Sets the priority of the threads that carrydata to the printer.

SchedulerThreadPriority: Sets the order in which threads getaccess to the printer (High threads go first, then Normal, then Low).

SpoolerPriority: Sets the priority of the spooler as an application.

The \Providers Sub-Key

There are two value entries:

EventLog, Reg_DWORD , default 1. When a print job completes,an entry is made in the event log. Set this to 0 to disable the logging, then go into Control Panel \Services andstop and start the spooler.

NetPopup, REG_DWORD, default 1. When a print job completes,a notification pops up. Set this to 0 to disable the notification.

The print service provider also has a tree of sub-keys, similar tothis:

... \LanMan Print Services

......... \Monitors

............... \LanMan Print Services Port

......... \Servers

............... \SERVERNAME

..................... \Forms

..................... \Printers

........................... \HP LaserJet

................................. \PrinterDriverData

The default top-level sub-key for a Windows NT network is \LanManPrint Services. It has two value entries:

Name , REG_SZ, whose value is the name of the DLL file for theservice.

DisplayName , REG_SZ, whose value is the name which is displayedto identify the service.

\Monitors has no value entries, but its sub-key \LanManPrint Services Port has a value entry Driver , REG_SZ, whose value is the name of the printerdriver DLL.

The next sub-key, \Servers, has one sub-key for each serverin the network; the sub-key name (where I wrote \SERVERNAME ) is the server name. Under the server is \Forms, which has a REG_BINARY value entry for each defined print form. At the same level is the sub-key \Printers.

Under \Printers there is a sub-key for each installed printer,each with a sub-key \PrinterDriverData. These contain many value entries defining the printer and its driver.We will not describe these value entries here, because that would take another two pages and they are all set automaticallythrough Control Panel \Printers.

 

If you have any comments about this article orany requests for new technical articles e-mail

 

Executive Software Europe