Freigeben über


Übersicht über die Druckererweiterungsbibliothek für UWP-Geräte-Apps

Important

Geräte-Metadaten sind veraltet und werden in einer zukünftigen Version von Windows entfernt. Informationen zum Ersatz dieser Funktionalität finden Sie unter Treiberpaketcontainermetadaten.

In diesem Artikel wird die Druckererweiterungsbibliothek vorgestellt, eine Bibliothek, die Gerätehersteller beim Schreiben von UWP-Geräte-Apps für ihren Drucker unterstützt. Die Druckererweiterungsbibliothek ist im Beispiel " Druckeinstellungen" und "Druckbenachrichtigungen " sowie im Beispiel " Auftragsverwaltung" und "Druckerwartung " enthalten.

Overview

Ein übergeordnetes Designziel für die v4-Druckertreiberarchitektur bestand darin, integrierte Unterstützung für die Benutzeroberfläche der Microsoft Store-App bereitzustellen. Um Zugriff auf den Drucker zu ermöglichen, macht der v4-Drucktreiber COM-basierte Druckererweiterungsschnittstellen verfügbar.

Um auf diese Schnittstellen aus Ihrer UWP-Geräte-App zuzugreifen, können Sie die Druckererweiterungsbibliothek verwenden, die in den Microsoft Store-Geräte-App-Druckerbeispielen enthalten ist. Die Druckererweiterungsbibliothek umschließt die COM-Implementierung der COM-Schnittstelle PrinterExtensionLib. Dies ermöglicht die Codefreigabe zwischen Druckererweiterungen und Ihrer UWP-Geräte-App.

Übersicht über die Druckererweiterungsbibliothek.

PrinterExtensionLibrary

Innerhalb des PrinterExtensionLibrary-Projekts, das in den Druckerbeispielen enthalten ist, gibt es zwei C#-Dateien. Diese Dateien umschließen den Inhalt von PrinterExtensionLib. Auf dieser Ebene könnten jedoch weitere Klassen hinzugefügt werden, um die Codefreigabe zwischen Druckererweiterungen und UWP-Geräte-Apps zu ermöglichen.

  • 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.

Sie können dieses Projekt mit allen erforderlichen C#-Dateien erweitern, die allgemeinen Modellebenencode beschreiben, der zum Erstellen der Druckererweiterung und/oder der UWP-Geräte-App erforderlich ist. Es wird jedoch nicht empfohlen, die vorhandenen Klassen zu aktualisieren, da diese Updates es schwieriger machen, Fehlerkorrekturen zu integrieren, die über Updates für die Beispiele zur Verfügung gestellt wurden.

DeviceAppForPrintersLibrary

Ein weiteres Projekt mit dem Namen DeviceAppForPrintersLibrary stellt Hilfsklassen und Methoden für C#-Apps bereit, die Sie für den Zugriff auf Drucker aus Ihrer UWP-Geräte-App verwenden können.

PrinterExtensionHelperLibrary

Um die C#-Schnittstellen, Klassen und Methoden in etwas zu konvertieren, das in JavaScript unterstützt wird, erstellt dieses Projekt eine WinMD-Datei. WinMD-Dateien geben Windows-Runtime-APIs an. Darüber hinaus kann diese Bibliothek verwendet werden, um Komfortobjekte verfügbar zu machen, die spezifisch für die Microsoft Store-Geräte-Apps sind, z. B. das Analysieren verschiedener Aktivierungskontexte oder das Erstellen von Popup-UI für Benachrichtigungen.

  • PrintHelperClass.cs includes the PrinterExtensionLibrary namespaces in order to expose them to JavaScript layers in the app. Es enthält auch einige Komfortmethoden für PrintTicket und 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.