drvDriverEvent 函数 (winddiui.h)

当后台处理程序处理可能需要打印机驱动程序执行操作的特定于驱动程序的事件时,打印后台处理程序调用打印机接口 DLL 的 DrvDriverEvent 函数。

语法

BOOL DrvDriverEvent(
                 DWORD  dwDriverEvent,
                 DWORD  dwLevel,
  [in, optional] LPBYTE pDriverInfo,
                 LPARAM lParam
);

参数

dwDriverEvent

调用方提供的位标志,指示已发生的事件。 下表列出了有效的标志。

标志 定义
DRIVER_EVENT_DELETE 正在删除驱动程序。
DRIVER_EVENT_INITIALIZE 驱动程序刚刚安装。

dwLevel

调用方提供的值,指示 pDriverInfo 参数指向的结构类型,如下表所示。

dwLevel 价值 pDriverInfo 指向的结构
1 DRIVER_INFO_1
2 DRIVER_INFO_2
3 DRIVER_INFO_3

Microsoft Windows SDK文档中介绍了 DRIVER_INFO_N 结构。

[in, optional] pDriverInfo

调用方提供的指向结构(其类型由 dwLevel 参数标识)的指针。

lParam

调用方提供的标志。 请参阅以下“备注”部分。

返回值

如果操作成功,该函数应返回 TRUE。 否则,它应返回 FALSE

注解

可选的 DrvDriverEvent 函数由后台处理程序的 AddPrinterDriverExDeletePrinterDriverEx 函数调用,如Windows SDK文档中所述。

函数的目的是允许打印机驱动程序的 打印机接口 DLL 执行安装或删除驱动程序时所需的操作。 此函数要执行的典型操作是创建或删除打印机 INF 文件中未指定为依赖文件的额外特定于驱动程序的文件。

如果 dwDriverEvent DRIVER_EVENT_DELETE,则 lparam 参数包含为 DeletePrinterDriverEx 函数的 dwDeleteFlag 参数指定的标志。 如果DRIVER_EVENT_INITIALIZE dwDriverEvent,则不使用 lparam 参数。

由于 DrvDriverEvent 函数是在打印后台处理程序的上下文中调用的,因此它无法显示用户界面。

要求

要求
目标平台 桌面
标头 winddiui.h (包括 Winddiui.h)