Windows NT Print Driver Architecture

Last reviewed: March 26, 1997
Article ID: Q141302
The information in this article applies to:
  • Microsoft Windows NT operating system version 3.1
  • Microsoft Windows NT Advanced Server version 3.1
  • Microsoft Windows NT Workstation versions 3.5 and 3.51
  • Microsoft Windows NT Server versions 3.5 and 3.51
  • Microsoft Windows NT Server version 4.0
  • Microsoft Windows NT Workstation version 4.0

SUMMARY

This article describes the Windows NT print driver. It also illustrates the advantages and disadvantages of having a universal driver with characterization files.

MORE INFORMATION

Printer drivers are composed of three separate files:

  1. A printer graphics driver (for example, PSCRIPT.DLL, RASDD.DLL, or PLOTTER.DLL). Graphics drivers are responsible for print rendering (converting DDI commands from the graphics engine into printer commands that a printer can understand). Each graphics driver handles different printer languages. For example:

          PSCRIPT.DLL: deals with the PostScript printer language.
          PLOTTER.DLL: deals with the HPGL/2 language used by many plotters.
    
          RASDD.DLL:   deals with printer languages based on raster (bitmap)
                       images, including PCL and most dot matrix printer
                       languages.
    
    

  2. A printer interface driver (for example, PSCRPTUI.DLL, RASDDUI.DLL, or PLOTUI.DLL). This dynamic-link library (DLL) includes the user interface you see when you configure a printer in Print Manager. It is called by the client side of the router (WINSPOOL.DRV).

  3. Characterization Files: Characterization data files provide model- specific information about print devices.

    When hardware vendors release new print devices, a characterization data file for the new device is all you will need for Windows NT. If Windows NT does not supply such a file for your print device, check the device's users' guide for a list of emulations. If your device emulates a device for which Windows NT supplies a driver, then you may be able to use this driver to get output.

    - Raster minidrivers are actually DLLs. The Windows NT Raster printer driver can read most Windows 3.1 minidriver DLLs (those created for UNIDRV.DLL)directly with no porting required. Raster minidrivers contain printer-specific information.

    - The PostScript driver uses standard Adobe PostScript .ppd files as

         characterization data files. These files include printer-specific
         information for a particular printer model and are available from the
         printer's manufacturer. Unlike Windows 3.1, the Windows NT PostScript
         printer driver can directly interpret .PPD files. Because PostScript
         printers are included with .PPD files, when new PostScript printers
         become available, they will be ready for use with Windows NT.
    

    - Plotter .pcd files are similar in function to raster minidrivers. They

         are dynamic link libraries (DLLs), which provide device-specific
         information to the graphics driver. Unlike raster minidrivers, .pcd
         files are specific to Windows NT; Windows NT cannot use plotter
         drivers built for Windows 3.1.
    

The architecture explained above is an excellent way to easily support a variety of printers by using a characterization file. The disadvantage is that new innovative technologies or unique vendor-specific features are not always supported by the universal driver. For this reason it is often a good idea to request a vendor-supplied NT Print driver to fully utilize the capabilities of a print device.


Additional query words: prodnt
Keywords : kbnetwork kbprint ntprint NTSrvWkst
Version : 3.1 3.5 3.51 4.0
Platform : WinNT


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: March 26, 1997
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.