Compartir a través de


Introducción a la biblioteca de extensiones de impresora para aplicaciones de dispositivos para UWP

Important

Los metadatos de dispositivo están obsoletos y se eliminarán en una futura versión de Windows. Para obtener información sobre el reemplazo de esta funcionalidad, vea Driver Package Container Metadata.

En este artículo se presenta la biblioteca de extensiones de impresora, una biblioteca que ayuda a los fabricantes de dispositivos a escribir aplicaciones de dispositivos para UWP para su impresora. La biblioteca de extensiones de impresora se incluye con el ejemplo De configuración de impresión y notificaciones de impresión , así como el ejemplo de mantenimiento de la impresora y administración de trabajos.

Overview

Un objetivo de diseño de alto nivel para la arquitectura del controlador de impresora v4 era proporcionar compatibilidad integrada con la interfaz de usuario de la aplicación de Microsoft Store. Para proporcionar acceso a la impresora, el controlador de impresión v4 expone interfaces de extensión de impresora basadas en COM.

Para acceder a esas interfaces desde la aplicación de dispositivo para UWP, puedes usar la biblioteca de extensiones de impresora que se incluye con los ejemplos de impresoras de aplicaciones de dispositivos de Microsoft Store. La biblioteca de extensiones de impresora ajusta la implementación COM de la interfaz PrinterExtensionLibCOM . Esto permite el uso compartido de código entre las extensiones de impresora y la aplicación de dispositivo para UWP.

Información general sobre la biblioteca de extensiones de impresora.

PrinterExtensionLibrary

En el proyecto PrinterExtensionLibrary que se incluye con los ejemplos de impresora, hay dos archivos de C#. Estos archivos encapsulan el contenido de PrinterExtensionLib. Pero se podrían agregar más clases en esta capa para permitir el uso compartido de código entre las extensiones de impresora y las aplicaciones de dispositivos para UWP.

  • PrinterExtensionTypes.cs specifies many helpful enumerations, constants, and interfaces that wrap the COM PrinterExtensionLib APIs.

  • PrinterExtensionAdapters.cs specifies all of the constructible classes used to wrap the COM PrinterExtensionLib APIs.

Puedes aumentar este proyecto con cualquier archivo de C# necesario que describa el código de capa de modelo común necesario para compilar la extensión de impresora o la aplicación de dispositivo para UWP. Sin embargo, no se recomienda actualizar las clases existentes, ya que estas actualizaciones dificultan la incorporación de correcciones de errores disponibles a través de las actualizaciones de los ejemplos.

DeviceAppForPrintersLibrary

Otro proyecto denominado DeviceAppForPrintersLibrary proporciona clases auxiliares y métodos para aplicaciones de C# que puedes usar para acceder a impresoras desde tu aplicación de dispositivo para UWP.

PrinterExtensionHelperLibrary

Para convertir las interfaces, clases y métodos de C# en algo admitido en JavaScript, este proyecto crea un archivo WinMD. Los archivos WinMD especifican las API de Windows Runtime. Además, esta biblioteca se puede usar para exponer objetos de conveniencia específicos de las aplicaciones de dispositivo de Microsoft Store, como analizar diferentes contextos de activación o crear la interfaz de usuario del sistema para las notificaciones.

  • PrintHelperClass.cs includes the PrinterExtensionLibrary namespaces in order to expose them to JavaScript layers in the app. También incluye algunos métodos de conveniencia para PrintTicket y Bidi.

  • PrinterNotificationHelper.cs demonstrates how to show toast UI for notifications.

The Output type for the PrinterExtensionHelperLibrary assembly is specified on Application page of the project properties window.