MSIX-manifestspecificatie voor afdrukondersteuning voor virtuele-printer
Met deze functie kunt u afdrukken naar een virtuele printer zonder dat oudere V3/V4-printerstuurprogramma's nodig zijn, omdat Windows van plan is om V3/V4-stuurprogramma's van derden te verwijderen. Zie Einde van onderhoudsplan voor printerstuurprogramma's van derden in Windowsvoor meer informatie.
De architectuur van de virtuele printer vereenvoudigt de implementatie van softwareprinters zonder stuurprogramma's van derden. Via deze architectuur kunnen ISV's (onafhankelijke softwareleveranciers) een softwareprinter implementeren als een toepassing die de functies implementeert die momenteel worden ondersteund door V3/V4-stuurprogramma's van derden.
In dit artikel wordt beschreven hoe een toepassing zichzelf kan registreren als een softwareprinter in het manifest.
Zie de volgende artikelen voor meer informatie:
Onderwerp | Beschrijving |
---|---|
ontwerphandleiding voor Print Support App | Biedt richtlijnen en voorbeelden voor printer-OEM's en IHD's die een print support-app (PSA) implementeren voor hun apparaat. |
ontwerphandleiding voor Print Support App v3 API | Biedt richtlijnen en voorbeelden voor printer-OEM's en IHD's die een v3 Print Support App (PSA) implementeren voor hun apparaat. |
ontwerphandleiding voor Print Support App v4 API | Biedt richtlijnen en voorbeelden voor printer-OEM's en IHD's die een v4 Print Support App (PSA) implementeren voor hun apparaat. |
App-associatie voor afdrukondersteuning | Bevat richtlijnen en voorbeelden voor het koppelen van een print support-app (PSA) aan een printer. |
Print Support App (PSA) is een architectuur die is geïntroduceerd om IHDV's te helpen bij het toevoegen van aanpassingen aan IPP-printers zonder het gebruik van stuurprogramma's van derden. Om de overgang naar de softwareprinter te vergemakkelijken, maken alle API's deel uit van de PrintSupportApp API-naamruimte en hergebruikt u enkele PSA-contracten die van toepassing zijn op virtual printerarchitectuur.
Het nieuwe manifestcontract is vergelijkbaar met het Windows.printSupportWorkflow- contract, maar dit contract heeft meer vermeldingen nodig omdat het wordt gebruikt voor het installeren van een virtuele printer.
De nieuwe Windows Deployment Extension Handler (DEH) installeert een virtuele printer op basis van de manifestdeclaratie en Windows Print Components roept de app aan wanneer de gebruiker afdrukt naar de geïnstalleerde virtuele printer.
Manifest kenmerken
printSupport:Extension - Extensievermelding voor virtuele printer
Category - Windows.printSupportVirtualPrinterWorkflow nieuw contract voor een app die de implementatie van een virtuele printer ondersteunt
PrintSupportVirtualPrinter - Elke vermelding geeft één afdrukwachtrij voor software-eindpunten op die samen met de toepassing moet worden geïnstalleerd. Elke PrintSupportVirtualPrinter vermelding kan de volgende kenmerken hebben:
PreferredInputFormat - Dit kenmerk geeft de voorkeursinvoer PDL-indeling voor de virtuele printer aan. Windows Print System genereert deze indeling voordat PDL-gegevens aan de virtuele printer worden gegeven voor alle afdrukpaden. Het veld kan slechts een van de volgende waarden zijn: application/oxps of application/postscript. De installatie mislukt als er andere indelingen zijn opgegeven in dit veld. Als het veld niet is opgegeven, wordt de toepassing/oxps ingesteld als de gewenste PDL-indeling voor de geïnstalleerde virtuele printer.
OutputFileTypes: wanneer dit kenmerk is opgegeven in het appx-manifest, maakt het Windows Print System een printerwachtrij die is gemarkeerd als een bestandsprinter en wordt het dialoogvenster Opslaan als weergegeven aan de gebruiker wanneer een toepassing begint met afdrukken naar de virtuele printer. De waarden van dit veld moeten doelbestandsextensies bevatten, zoals pdf/pwgr/ps etc. Deze waarden worden opgeslagen in stuurprogrammagegevens en worden toegevoegd aan Opslaan als dialoogvenster als de toegestane extensies. Als een virtuele printer geen afdrukgedrag voor bestanden wil (inclusief virtuele printers waarin afdrukgegevens worden opgeslagen in de cloud of printers die gegevens verzenden naar een toepassing zoals OneNote), moet dit veld niet worden toegevoegd aan het manifest.
ondersteunde indelingen: dit element kan worden gebruikt voor virtuele printer om alle PDL-indelingen op te geven die kunnen worden verwerkt. Dit wordt gebruikt voor directe afdruktoepassingen zoals Microsoft Edge, om het ondersteunde formaat, zoals PDF, te identificeren en een PDF-stroom rechtstreeks door te geven aan de virtuele printer, zonder dat er wijzigingen worden aangebracht door het Windows Print-systeem. Dit veld kan SupportedFormat als onderliggende elementen hebben.
SupportedFormat - Element specificeert een PDL-indeling voor een enkele passthrough en kan de volgende kenmerken hebben.
Type - Dit kenmerk wordt gebruikt om het ondersteunde MIME-type op te geven dat wordt ondersteund door virtuele printer
MaxVersion - Dit attribuut specificeert de maximale versie van die PDL-indeling die de virtuele printer kan ontvangen. De waarde MaxVersion moet de indeling MajorVersion.MinorVersion hebben. Het Windows-afdruksysteem faalt de printerinstallatie als het in een ander formaat is. MajorVersion en MinorVersion kunnen alleen getallen zijn. Als er tekens aanwezig zijn, wordt het versieveld ongeldig en genegeerd.
PdcFile-: dit kenmerk moet verwijzen naar een resourcebestand in het toepassingspakket. Het bestand moet inhoud bevatten in de XML-indeling Print Device Capabilities, namelijk het definiëren van printermogelijkheden en moet worden gebruikt om aangepaste functies/opties of parameters te definiëren. Dit is een verplicht veld en de printerinstallatie mislukt als de waarde niet aanwezig is of als de bestandsinhoud niet in geldige PDC-indeling is.
PdrFile-- Indien opgegeven, moet dit kenmerk verwijzen naar een resourcebestand in het toepassingspakket. Het bestand moet afdrukapparaatbronnen in een XML-indeling bevatten. Dit veld moet worden opgegeven als de app aangepaste afdrukvoorkeuren wil lokaliseren. Dit veld is optioneel en resourcelokalisatie voor afdrukvoorkeuren wordt verwerkt door het afdruksysteem als dit veld niet aanwezig is.
DisplayName - Hiermee geeft u de naam op van de virtuele printerwachtrij die wordt geïnstalleerd. Beperkingen van deze tekenreeks zijn hetzelfde als de beperking die u hebt voor de naam van een Windows-printer.
PrinterUri- - Hiermee geeft u een unieke URI op die door PSA-toepassingen kan worden gebruikt om de printer te identificeren. Eén virtual printer-app kan meerdere software-eindpunten opgeven, waardoor meerdere printers moeten worden geïnstalleerd. Het veld PrinterUri kan worden gebruikt om onderscheid te maken tussen deze printers. Deze URI-uitvoer wordt gegenereerd vanuit de IppPrintDevice::PrinterUri-API. Als de URI niet is opgegeven, wijst Windows een willekeurige unieke URI toe aan de printer.
Manifestvoorbeeld
<Extensions>
<printsupport2:Extension Category="windows.printSupportVirtualPrinterWorkflow" EntryPoint="Tasks.PrintSupportWorkflowBackgroundTask">
<PrintSupportVirtualPrinter DisplayName="ms-resource://PRINTER_NAME1" PrinterUri="contoso-psa:printer1" PreferredInputFormat="application/postscript" OutputFileTypes="ps;pdf" PdcFile="Config\PRINTER_PDC1.xml" PdrFile="Config\PRINTER_PDR1.xml">
<SupportedFormats>
<SupportedFormat Type="application/postscript" />
<SupportedFormat Type="application/pdf" MaxVersion="1.7" />
</SupportedFormats>
</PrintSupportVirtualPrinter>
</printsupport2:Extension>
<printsupport2:Extension Category="windows.printSupportVirtualPrinterWorkflow" EntryPoint="Tasks.PrintSupportWorkflowBackgroundTask">
<PrintSupportVirtualPrinter DisplayName="ms-resource://PRINTER_NAME2" PrinterUri ="contoso-psa:printer2" PreferredInputFormat="application/oxps" OutputFileTypes="pwgr;pdf" PdcFile="ms-appx:///PRINTER_PDC2.xml" PdrFile="ms-appx:///PRINTER_PDR2.xml">
<SupportedFormats>
<SupportedFormat Type="application/pdf" MaxVersion="1.7" />
</SupportedFormats>
</PrintSupportVirtualPrinter>
</printsupport2:Extension>
<printsupport:Extension Category="windows.printSupportExtension" EntryPoint="Tasks.PrintSupportExtensionBackGroundTask"/>
<printsupport:Extension Category="windows.printSupportSettingsUI" EntryPoint="PrintSupportApp.App"/>
<printsupport:Extension Category="windows.printSupportJobUI" EntryPoint="PrintSupportApp.App"/>
</Extensions>
Verwante artikelen
einde van het onderhoudsplan voor printerstuurprogramma's van derden in Windows