Поделиться через


OpenPrinter

Внимание

Современная платформа печати — это предпочтительный способ взаимодействия с принтерами Windows. Рекомендуется использовать драйвер класса "Входящие" Microsoft IPP вместе с приложениями поддержки печати (PSA), чтобы настроить возможности печати в Windows 10 и 11 для разработки устройств принтера.

Дополнительные сведения см. в статье "Современная платформа печати" и руководство по проектированию приложений поддержки печати.

При открытии очереди печати с помощью функции OpenPrinter драйвер печати загружается и в этом порядке вызываются следующие методы интерфейса IPrintTicketProvider:

  1. IPrintTicketProvider::GetSupportedVersions

  2. IPrintTicketProvider::BindPrinter

  3. IPrintTicketProvider::QueryDeviceNamespace

Методы интерфейса IPrintTicketProvider в драйвере печати Unidrv или PScript5 вызывают методы интерфейса IPrintOemPrintTicketProvider каждого подключаемого модуля, размещенного драйвером. На следующем рисунке и списке показано, как эти вызовы выполняются при вызове OpenPrinter .

схема, иллюстрирующая последовательность вызовов openprinter.

  1. Для каждого подключаемого модуля вызовите IPrintOemPrintTicketProvider::GetSupportedVersions.

  2. Для каждого подключаемого модуля вызовите IPrintOemPrintTicketProvider::BindPrinter.

  3. Для каждого подключаемого модуля вызовите IPrintOemPrintTicketProvider::QueryDeviceDefaultNamespace.