打印后台处理程序 API 函数

打印后台处理程序 API 包含应用程序用于管理 Windows 打印后台处理程序及其控制的打印机和打印作业的函数和数据结构。

打印后台处理程序 API 的功能分为以下组:

这些函数将打印作业发送到打印机,并跟踪和控制打印后台处理程序中的打印作业。

函数 说明
AddJob
AddJob 函数将打印作业添加到打印作业列表中,打印后台处理程序可以计划该作业。 函数检索可用于存储作业的文件的名称。
ClosePrinter
ClosePrinter 函数关闭指定的打印机对象。
DocumentEvent
DocumentEvent 函数是与打印文档关联的事件的事件处理程序。
DocumentProperties
DocumentProperties 函数检索或修改打印机初始化信息,或显示指定打印机的打印机配置属性表。
EndDocPrinter
EndDocPrinter 函数结束指定打印机的打印作业。
EndPagePrinter
EndPagePrinter 函数通知打印后台处理程序应用程序位于打印作业中的页面末尾。
EnumJobs
EnumJobs 函数检索有关指定打印机的一组指定打印作业的信息。
GetJob
GetJob 函数检索有关指定打印作业的信息。
OpenPrinter
OpenPrinter 函数检索指定打印机或打印服务器或打印子系统中其他类型的句柄的句柄。
OpenPrinter2
在设置某些打印机选项时,检索打印子系统中指定打印机、打印服务器或其他类型的句柄的句柄。
ReportJobProcessingProgress
向打印后台处理程序服务报告 XPS 打印作业是否处于后台打印或呈现阶段,以及当前正在处理的哪一部分。
ScheduleJob
ScheduleJob 函数请求打印后台处理程序计划指定的打印作业进行打印。
SetJob
SetJob 函数暂停、恢复、取消或重新启动指定打印机上的打印作业。 还可以使用 SetJob 函数设置打印作业参数,例如打印作业优先级和文档名称。
StartDocPrinter
StartDocPrinter 函数通知打印后台处理程序文档将进行假脱机打印。
StartPagePrinter
StartPagePrinter 函数通知后台处理程序即将在指定的打印机上打印页面。

打印机用户界面函数

这些函数显示允许用户选择或配置打印机的用户界面。

函数 说明
AdvancedDocumentProperties
AdvancedDocumentProperties 函数显示指定打印机的打印机配置对话框,允许用户配置该打印机。
ConfigurePort
ConfigurePort 函数显示指定服务器上的端口的端口配置对话框。
ConnectToPrinterDlg
ConnectToPrinterDlg 函数显示一个对话框,允许用户浏览和连接到网络上的打印机。 如果用户选择打印机,该函数将尝试创建与打印机的连接;如果未在服务器上安装合适的驱动程序,则为用户提供在本地创建打印机的选项。
PrinterProperties
PrinterProperties 函数显示指定打印机的 printer-properties 属性表。

打印机函数

这些函数添加和配置打印后台处理程序使用的打印机。

函数 说明
AbortPrinter
如果打印机配置为假脱机, 则 AbortPrinter 函数将删除打印机的后台打印文件。
AddPrinter
AddPrinter 函数将打印机添加到指定服务器支持的打印机列表中。
AddPrinterConnection
AddPrinterConnection 函数为当前用户添加与指定打印机的连接。
AddPrinterConnection2
为当前用户添加与指定打印机的连接,并指定连接详细信息。
DeletePrinter
DeletePrinter 函数删除指定的打印机对象。
DeletePrinterConnection
DeletePrinterConnection 函数删除与通过调用 AddPrinterConnectionConnectToPrinterDlg 建立的打印机的连接。
DeletePrinterData
DeletePrinterData 函数删除打印机的指定配置数据。 打印机的配置数据由一组命名值和类型值组成。 DeletePrinterData 函数删除其中一个值,由其值名称指定。
DeletePrinterDataEx
DeletePrinterDataEx 函数从打印机的配置数据中删除指定的值。 打印机的配置数据由一组存储在注册表项层次结构中的命名值和类型值组成。 函数删除指定键下的指定值。
DeletePrinterKey
DeletePrinterKey 函数删除指定打印机的指定键及其所有子项。
EnumPrinterData
EnumPrinterData 函数枚举指定打印机的配置数据。
EnumPrinterDataEx
EnumPrinterDataEx 函数枚举指定打印机和密钥的所有值名称和数据。
EnumPrinterKey
EnumPrinterKey 函数枚举指定打印机的指定键的子项。
EnumPrinters
EnumPrinters 函数枚举可用的打印机、打印服务器、域或打印提供程序。
FlushPrinter
FlushPrinter 函数将缓冲区发送到打印机,以便将其从暂时性状态中清除。
GetDefaultPrinter
GetDefaultPrinter 函数检索本地计算机上当前用户的默认打印机的打印机名称。
GetPrinter
GetPrinter 函数检索有关指定打印机的信息。
GetPrinterData
GetPrinterData 函数检索指定打印机或打印服务器的配置数据。
GetPrinterDataEx
GetPrinterDataEx 函数检索指定打印机或打印服务器的配置数据。 GetPrinterDataEx 可以检索 SetPrinterData 函数存储的值。 此外, GetPrinterDataEx 可以检索 SetPrinterDataEx 函数在指定键下存储的值。
IsValidDevmode
IsValidDevmode 函数验证 DEVMODE 结构的内容是否有效。
ReadPrinter
ReadPrinter 函数从指定的打印机检索数据。
ResetPrinter
ResetPrinter 函数指定用于打印 StartDocPrinter 函数提交的文档的数据类型和设备模式值。 文档打印开始后,可以使用 SetJob 函数重写这些值。
SetDefaultPrinter
SetDefaultPrinter 函数为本地计算机上的当前用户设置默认打印机的打印机名称。
SetPort
SetPort 函数设置与打印机端口关联的状态。
SetPrinter
SetPrinter 函数设置指定打印机的数据,或通过暂停打印、恢复打印或清除所有打印作业来设置指定打印机的状态。
SetPrinterData
SetPrinterData 函数设置打印机或打印服务器的配置数据。
SetPrinterDataEx
SetPrinterDataEx 函数设置打印机或打印服务器的配置数据。 函数将配置数据存储在打印机的注册表项下。
WritePrinter
WritePrinter 函数通知打印后台处理程序应将数据写入指定的打印机。

打印机更改通知函数

这些函数使应用程序能够收到打印机状态更改的通知。

函数 说明
FindClosePrinterChangeNotification
FindClosePrinterChangeNotification 函数关闭通过调用 FindFirstPrinterChangeNotification 函数创建的更改通知对象。 与更改通知对象关联的打印机或打印服务器将不再受到该对象的监视。
FindFirstPrinterChangeNotification
FindFirstPrinterChangeNotification 函数创建更改通知对象,并返回对象的句柄。 然后,可以在调用某个等待函数时使用此句柄来监视对打印机或打印服务器的更改。
FindNextPrinterChangeNotification
FindNextPrinterChangeNotification 函数检索有关与打印机或打印服务器关联的更改通知对象的最新更改通知的信息。 满足更改通知对象上的等待操作时调用此函数。
FreePrinterNotifyInfo
FreePrinterNotifyInfo 函数释放由 FindNextPrinterChangeNotification 函数创建的系统分配的缓冲区。

打印机窗体函数

这些函数管理打印机使用的表单。

函数 说明
AddForm
AddForm 函数将窗体添加到可以为指定打印机选择的可用窗体列表中。
DeleteForm
DeleteForm 函数从支持的窗体列表中删除窗体名称。
EnumForms
EnumForms 函数枚举指定打印机支持的窗体。
GetForm
GetForm 函数检索有关指定窗体的信息。
SetForm
SetForm 函数设置指定打印机的窗体信息。

这些函数在低级别与打印后台处理程序交互。

函数 说明
CloseSpoolFileHandle
CloseSpoolFileHandle 函数关闭与应用程序当前提交的打印作业关联的假脱机文件的句柄。
CommitSpoolData
CommitSpoolData 函数通知打印后台处理程序指定的数据量已写入指定的后台打印文件,并已准备好呈现。
GetPrintExecutionData
GetPrintExecutionData 检索当前打印上下文。
GetSpoolFileHandle
GetSpoolFileHandle 函数检索与应用程序当前提交的作业关联的假脱机文件的句柄。