Freigeben über


Ersetzen von vom Treiber bereitgestellten Eigenschaftenblattseiten

Wichtig

Die Modern Print-Plattform ist die von Windows bevorzugte Methode zur Kommunikation mit Druckern. Wir empfehlen die Verwendung des Microsoft IPP-Treibers für die Posteingangsklasse zusammen mit Print Support Apps (PSA), um das Druckverhalten in Windows 10 und 11 für die Entwicklung von Druckergeräten anzupassen.

Weitere Informationen finden Sie unter Modern Print-Plattform und der Anleitung zum Design der Print-Support-App.

Die COM-Schnittstelle IPrintCoreUI2 stellt vier Methoden bereit, die ein Pscript5-UI-Plug-In unter Windows XP und höheren Versionen des Windows-Betriebssystems verwenden müssen, wenn die Standard-UI-Seiten des Haupttreibers vollständig ersetzt werden sollen. (Der Begriff Kerntreiber bezieht sich entweder auf den Unidrv- oder Pscript5-Druckertreiber.) Diese Methoden sind wie folgt:

IPrintCoreUI2::EnumConstrainedOptions

IPrintCoreUI2::GetOptions

IPrintCoreUI2::SetOptions

IPrintCoreUI2::WhyConstrained

Diese Methoden werden nur während der Ausführung der IPrintOemUI::DocumentPropertySheets und IPrintOemUI::DevicePropertySheets-Methoden und deren Eigenschaftenblattrückrufroutinen unterstützt. Ein UI-Plug-In unterstützt diese Methoden zum Anzeigen einer eigenen Benutzeroberfläche. Wenn diese Methoden nicht unterstützt werden, werden E_NOTIMPL zurückgegeben.

Der Kerntreiber zeigt eine eigene Eigenschaftenblatt-UI unter zwei Umständen an – für DrvDocumentPropertySheets und für DrvDevicePropertySheets. Die erste Methode zeigt Eigenschaften an, die nur für Dokumente gelten (Dokument-Sticky-Eigenschaften), während die zweite Methode Eigenschaften anzeigt, die auf ein Gerät (Geräte- oder Drucker-Sticky-Eigenschaften) angewendet werden.

Der Kerntreiber merkt sich den Typ des Eigenschaftenblatts, das es verarbeitet (und daher der Modus -- Dokument-Sticky oder Drucker-Sticky). Der Kerntreiber speichert diese Statusinformationen in einer Struktur (der OEMUIOBJ-Struktur), die er für die UI-Instanz erstellt. Wenn der Kerntreiber die Schnittstellenmethoden eines Plug-Ins aufruft, übergibt es einen Zeiger an eine OEMUIOBJ-Struktur, sodass, wenn ein Plug-In den Kerntreiber von IPrintCoreUI2::EnumConstrainedOptions, IPrintCoreUI2::GetOptions, IPrintCoreUI2::SetOptions oder IPrintCoreUI2::WhyConstrained zurückruft, diese Methoden den Zeiger an den Kerntreiber zurückgeben, der dann den Modus bestimmen kann.

Für IPrintCoreUI2::EnumConstrainedOptions, IPrintCoreUI2::SetOptions und IPrintCoreUI2::WhyConstrained werden während der Ausführung von IPrintOemUI::DocumentPropertySheets oder seiner Eigenschaftenblatt-Rückrufroutine nur dokumentenklebende Funktionen unterstützt und während der Ausführung von IPrintOemUI::DevicePropertySheets oder seiner Eigenschaftenblatt-Rückrufroutine nur druckerklebende Funktionen. Für IPrintCoreUI2::SetOptions sollte jedes Feature, dessen Klebigkeit nicht mit dem aktuellen Sticky-Modus übereinstimmt, ignoriert werden. Wenn entweder IPrintCoreUI2::EnumConstrainedOptions oder IPrintCoreUI2::WhyConstrained für ein Feature aufgerufen wird, dessen Klebigkeit nicht mit dem aktuellen Haftmodus übereinstimmt, sollte die Methode E_INVALIDARG zurückgeben.

Für IPrintCoreUI2::GetOptionswerden im Document-Sticky-Modus (d. h. wenn IPrintOemUI::DocumentPropertySheets oder dessen Eigenschaftenblatt-Rückrufroutine ausgeführt werden) sowohl Document-Sticky- als auch Printer-Sticky-Funktionen unterstützt, im Printer-Sticky-Modus (wenn IPrintOemUI::DevicePropertySheets oder dessen Eigenschaftenblatt-Rückrufroutine ausgeführt werden) werden jedoch nur Printer-Sticky-Funktionen unterstützt.