Q141302: Windows NT Print Driver Architecture
Article: Q141302
Product(s): Microsoft Windows NT
Version(s): 3.1 3.5 3.51 4.0
Operating System(s):
Keyword(s): kbnetwork kbprint kbPrinting
Last Modified: 14-FEB-2002
-------------------------------------------------------------------------------
The information in this article applies to:
- Microsoft Windows NT Server version 3.1
- Microsoft Windows NT Workstation version 3.1
- Microsoft Windows NT Advanced Server, version 3.1
- Microsoft Windows NT Workstation versions 3.5, 3.51, 4.0
- Microsoft Windows NT Server versions 3.5, 3.51, 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 kbPrinting
Technology : kbWinNTsearch kbWinNTWsearch kbWinNTW400 kbWinNTW400search kbWinNT351search kbWinNT350search kbWinNT400search kbWinNTW350 kbWinNTW350search kbWinNTW351search kbWinNTW351 kbWinNTW310 kbWinNTSsearch kbWinNTS400search kbWinNTS400 kbWinNTS351 kbWinNTS350 kbWinNTS310 kbWinNTAdvSerSearch kbWinNTAdvServ310 kbWinNTS351search kbWinNTS350search kbWinNTS310search kbWinNT310Search kbWinNTW310Search
Version : 3.1 3.5 3.51 4.0
=============================================================================
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.
Copyright Microsoft Corporation 1986-2002.