DrvUpgradePrinter 函数 (winddiui.h)

将新版本的驱动程序添加到系统时,打印机接口 DLL 的 DrvUpgradePrinter 函数用于更新打印机的注册表设置。

语法

BOOL DrvUpgradePrinter(
                 DWORD  Level,
  [in, optional] LPBYTE pDriverUpgradeInfo
);

参数

Level

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

级别 pDriverUpgradeInfo 指向的结构
1 DRIVER_UPGRADE_INFO_1
2 DRIVER_UPGRADE_INFO_2

[in, optional] pDriverUpgradeInfo

调用方提供的指针指向 dwLevel标识其类型的结构。

返回值

如果作成功,函数应返回 true ;否则,它应调用 SetLastError 来设置错误代码并返回 FALSE

言论

打印机接口 DLL 可以选择提供 DrvUpgradePrinter 函数。 如果这样做,后台处理程序会在将打印机驱动程序复制到系统时为每个打印机调用它。 当系统从一个作系统版本升级到下一个作系统版本,或者当应用程序通过调用 Win32 AddPrinterDriver 函数更新打印机驱动程序时,将发生这种情况。

通常,新的驱动程序版本需要与旧版本不同的注册表设置。 DrvUpgradePrinter 函数的目的是更新注册表,使其与驱动程序兼容。 有关在注册表中存储打印机信息的详细信息,请参阅 DrvPrinterEvent

对于 Windows 2000 及更高版本,当后台处理程序调用 DrvUpgradePrinter时,它为 pDriverUpgradeInfo提供DRIVER_UPGRADE_INFO_2结构指针。 如果函数返回 FALSE,则后台处理程序将再次调用该函数,这次指定DRIVER_UPGRADE_INFO_1结构指针。 如果此调用返回 FALSE,则后台处理程序在事件日志中写入一个条目。

对于 Windows NT 4.0 及以前版本,当后台处理程序调用 DrvUpgradePrinter时,它为 pDriverUpgradeInfo提供DRIVER_UPGRADE_INFO_1结构指针。 如果函数返回 FALSE,则后台处理程序在事件日志中写入一个条目。

要求

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

另请参阅

DRIVER_UPGRADE_INFO_1

DRIVER_UPGRADE_INFO_2

DrvPrinterEvent