Функция DrvUpgradePrinter (winddiui.h)

Функция 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, он предоставляет указатель DRIVER_UPGRADE_INFO_2 структуры для pDriverUpgradeInfo. Если функция возвращает значение FALSE, очередь очереди снова вызывает функцию, на этот раз указывая указатель DRIVER_UPGRADE_INFO_1 структуры. Если этот вызов возвращает значение FALSE, диспетчер очереди печати записывает запись в журнал событий.

Для Windows NT 4.0 и предыдущих версий, когда модуль очереди очереди вызывает DrvUpgradePrinter, он предоставляет указатель структуры DRIVER_UPGRADE_INFO_1 для pDriverUpgradeInfo. Если функция возвращает значение FALSE, диспетчер очереди печати записывает запись в журнал событий.

Требования

Требование Значение
Целевая платформа Персональный компьютер
Верхняя часть winddiui.h (включая Winddiui.h)

См. также раздел

DRIVER_UPGRADE_INFO_1

DRIVER_UPGRADE_INFO_2

DrvPrinterEvent