The Lprint utility supports printing of documents on laser printers. It consructs the correct options string for the Queue.Print command to print images on on the laser printer. The printer class can be entered explicitly or can be retrieved from the file !Machine.Laser_Class by default. See the System Manager's Guide for setting up printer queues and classes. The procedure Initialize_Print_Spooler supports the automatic setup of network printer devices at system initialization time. This tool parses a file called Printer_Configuration located by default in "!Machine". It automatically calls the commands in package Queue using this information to set up the specified classes, devices and the registering of those classes with a specific device. It also constructs several files used to define the newtork location of all printers. If a printer is moved to a new location, the files specifying these locatations can be automatically reconfigured. Printing commands (like Lprint) consult these files to find the current location of a specific printer. An example configuration file is -- This is the Rational printer configuration -- * indicates the default class --NetNam Class Device Dev Options Class File -------- ----- ------------ -------------------------- --------------------- lp lp terminal_29 rts !Machine.Lp_Class wp wp terminal_30 xon_xoff !Machine.Wp_Class Merlin mlaser terminal_253 laser_comm,host=mktg_laser !Machine.Mlaser_Class *Merlin apple terminal_255 laser_comm,host=apple_print !Machine.Laser_Class Key: NetNam - Network name of the host for this class Class - Name of the class being defined Device - Device on which the class will be printed Dev Options - Options passed when adding the device with Queue.Add Class File - Location of the file that is updated with the full network name of the class (like !!Zebra.Lp - the class Lp on the machine Zebra if the netname lp maps to Zebra) Comments (indicated with a "--") can be used at the beginning or end of a line. If the NetNam is the name of the local machine the class file will contain the simple name of the class indicating the the class to be defined locally to that machine. The configuration file should be identical on all machines. This will allow the movement of printer queues and printers among machines without update of the configuration file. The directory Network_Printing contains a procedure Network_Print which will print any object (ada, text, output window, mail message, mailbox, etc). on a laser printer. I will also print objects located on other machines by first ftp'ing the object over to the local machine, then queing it for printing. This procedure could be addapted to work with lineprinters by modifying the options sent to the Queue.Print command embedded in Network_Print.