后台处理程序组件简介

下图演示了打印后台处理程序的主要组件。

说明打印后台处理程序的主要组件的关系图。

应用程序 打印应用程序通过调用 GDI 函数创建打印作业。

GDI 图形设备接口 (GDI) 包括用户模式和内核模式组件。 需要图形支持的 Win32 应用程序使用用户模式组件 Microsoft Win32 GDI。 内核模式组件、图形引擎(或图形呈现引擎)导出图形设备驱动程序可以使用的服务和函数。

Winspool.drv Winspool.drv 是后台处理程序的客户端接口。 它导出组成后台处理程序的 Win32 API 的函数,并提供用于访问服务器的 RPC 存根。 (GDI 是主要客户端,但应用程序也调用其中一些 Win32 函数。

Spoolsv.exe Spoolsv.exe 是后台处理程序的 API 服务器。 它作为在启动操作系统时启动的服务实现。 本模块将 RPC 接口导出到后台处理程序的 Win32 API 的服务器端。 Spoolsv.exe 的客户端包括 Winspool.drv(本地)和 Win32spl.dll(远程)。 该模块实现一些 API 函数,但大多数函数调用通过路由器 (Spoolss.dll) 传递给打印提供程序

路由器 路由器 Spoolss.dll 根据每个函数调用提供的打印机名称或句柄来确定要调用的打印提供程序,并将函数调用传递给正确的提供程序。

打印提供程序 支持指定的打印设备的打印提供程序。

打印监视器 Windows 支持两种类型的打印监视器:语言监视器和端口监视器。

如果打印机硬件是运行应用程序的系统的本地硬件,则“客户端”和“服务器”是相同的系统(尽管此目标在关系图中并不明显)。

所有后台处理程序组件都在用户模式下执行。