When a client computer connects to a remote printer and sends a print job to it, the router polls each remote print provider on the client computer. The router passes control of the print job to the first remote print provider that recognizes the printer name.
Windows NT supplies the following remote print providers:
Note Neither of these remote print providers performs spooling.
If the local copy of the Windows network print provider, Win32spl.dll, recognizes the printer name, it performs additional processing based on the type of print server to which the job is going. If the print server is running Windows NT, Win32spl.dll makes remote procedure calls to the router (Spoolss.dll) on the print server. The router receives the print job over the network and passes it to the local print provider as if one of its own local clients had submitted it.
If the remote print server is a downlevel server, Win32spl.dll sends a message to the Windows NT NetBIOS redirector. The redirector forwards the job over the network to the downlevel server.
The functions provided by the Windows network print provider are illustrated in the following figure.
Figure 2.3 The Windows Network Print Provider (Win32spl.dll)
If the NetWare print provider (Nwprovau.dll) recognizes the printer name when polled by the router, it takes control of the print job. The NetWare print provider sends a message to the NetWare workstation service (Nwwks.dll), which in turn passes control to the NetWare redirector. The NetWare redirector transmits the print job over the network to the NetWare print server.
Note To send print jobs over Windows NT to a NetWare print server, you must install Gateway Services for NetWare. To receive print jobs from NetWare print clients, you must install File and Print Services for NetWare.
Figure 2.4 The NetWare Print Provider (Nwprovau.dll)