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


Общие сведения о библиотеке расширений принтера для приложений устройств UWP

В этом разделе представлена библиотека расширений принтера, библиотека, которая помогает производителям устройств писать приложения устройств UWP для своего принтера. Библиотека расширений принтера включается в пример параметров печати и уведомлений о печати, а также пример управления заданиями и обслуживания принтера.

Обзор

Высокоуровневая цель проектирования архитектуры драйвера принтера версии 4 — обеспечить встроенную поддержку пользовательского интерфейса приложения Microsoft Store. Чтобы предоставить доступ к принтеру, драйвер печати версии 4 предоставляет интерфейсы расширения принтера на основе COM.

Чтобы получить доступ к этим интерфейсам из приложения устройства UWP, можно использовать библиотеку расширений принтера, включенную в примеры принтера приложения устройства Microsoft Store. Библиотека расширений принтера упаковывает реализацию COM-интерфейса PrinterExtensionLibCOM. Это позволяет совместно использовать код между расширениями принтера и приложением устройства UWP.

printer extension library overview.

PrinterExtensionLibrary

В проекте PrinterExtensionLibrary, который входит в примеры принтера, есть два файла C#. Эти файлы упаковывают содержимое PrinterExtensionLib. Но дополнительные классы можно добавить на этом уровне, чтобы обеспечить общий доступ к коду между расширениями принтера и приложениями устройств UWP.

  • PrinterExtensionTypes.cs задает ряд полезных перечислений, констант и интерфейсов, которые упаковывают API COM PrinterExtensionLib.

  • PrinterExtensionAdapters.cs указывает все конструируемые классы, используемые для упаковки API-интерфейсов COM PrinterExtensionLib.

Этот проект можно расширить с помощью всех необходимых файлов C#, описывающих общий код слоя модели, необходимый для создания расширения принтера и (или) приложения устройства UWP. Однако мы не рекомендуем обновлять существующие классы, так как это усложнит включение исправлений ошибок, которые были доступны через обновления примеров.

DeviceAppForPrintersLibrary

Дополнительный проект с именем DeviceAppForPrintersLibrary предоставляет вспомогательные классы и методы для приложений C#, которые можно использовать для доступа к принтерам из приложения устройства UWP.

PrinterExtensionHelperLibrary

Чтобы преобразовать интерфейсы C#, классы и методы в что-то, поддерживаемое в JavaScript, этот проект создаст файл WinMD. Файлы WinMD указывают среда выполнения Windows API. Кроме того, эту библиотеку можно использовать для предоставления удобных объектов, относящихся к приложениям устройств Microsoft Store, таким как анализ различных контекстов активации или создание всплывающего пользовательского интерфейса для уведомлений.

  • PrintHelperClass.cs включает пространства имен PrinterExtensionLibrary, чтобы предоставить их слоям JavaScript в приложении. Он также включает некоторые удобные методы для PrintTicket и Bidi.

  • PrinterNotificationHelper.cs демонстрирует отображение всплывающего пользовательского интерфейса для уведомлений.

Тип вывода для сборки PrinterExtensionHelperLibrary указывается на странице приложения окна свойств проекта.

Разработка драйверов печати версии 4

Интерфейсы расширения принтера (драйвер печати версии 4)

Управление заданиями (драйвер принтера версии 4)

Обслуживание устройств (драйвер принтера версии 4)

Двунаправленная связь

Начало работы с приложениями UWP

Создание приложения устройства UWP (пошаговое руководство)

Создание метаданных устройства для приложения устройства UWP (пошаговое руководство)