A method and apparatus for updating print drivers is described. The
described system includes a port monitor that monitors the configuration
and status of a printer. When changes occur to the configuration of a
printer, the port monitor updates a print driver registry on the print
server. The port monitor also wakes the print driver on the print server
and informs the print driver of the configuration changes. Depending on
the client operating system used, a client device connected to the
server's shared print queue may either directly read or request the
configuration data from the print server. In some client operating
systems, the client device may also update a local registry on the client
device to reflect the changes in configuration of the printer. The
described system allows print drivers to have a consistent interface to
printer configuration and status data regardless of which version of the
Microsoft Windows Operating System is used by the each.