Dela via


Skapa en grundläggande v4-skrivardrivrutin

Viktigt!

Den moderna utskriftsplattformen är Windows bästa sätt att kommunicera med skrivare. Vi rekommenderar att du använder Microsofts IPP-drivrutin för inkorgsklass tillsammans med Print Support Apps (PSA) för att anpassa utskriftsupplevelsen i Windows 10 och 11 för enhetsutveckling av skrivare.

Mer information finns i designguiden för utskriftssupportapp v1 och v2.

Viktigt!

Microsoft har meddelat slut på support för äldre v3- och v4-skrivardrivrutiner.

Mer information finns i Slut på serviceplanen för skrivardrivrutiner från tredje part i Windows.

Varning

Den här tutorialen för skrivardrivrutinen innehåller flera fel och kan inte användas just nu.

Skapa en grundläggande v4-skrivardrivrutin med hjälp av guiden för drivrutinsutveckling i Microsoft Visual Studio 2019 för att välja den minsta uppsättningen funktioner för att skapa en funktionell skrivardrivrutin.

Anvisningarna i det här avsnittet fokuserar på de steg som krävs för att skapa en drivrutin och förklarar inte de många alternativ för skrivardrivrutiner som är tillgängliga i guiden.

Avsikten med det här avsnittet är att ge en introduktion till processen när du utvecklar en skrivardrivrutin i Visual Studio 2019.

En mer detaljerad titt på alternativen för skrivardrivrutiner finns i Utforska drivrutinsalternativen i guiden.

Förutsättningar

Följ riktlinjerna i Ladda ned Windows Driver Kit (WDK) och se till att du har slutfört följande:

  1. Installera Visual Studio 2019 med Skrivbordsutveckling med C++ -arbetsbelastning och rätt version av Windows 10 SDK.

  2. Installera Windows Driver Kit (WDK) för Windows 10 version 2004.

  3. Installera WDK-tillägget (Windows Driver Kit) för Visual Studio 2019.

Välj funktioner för den grundläggande drivrutinen

  1. I Visual Studio går du till huvudmenyn och väljer Arkiv>Nytt>projekt.

  2. I fönstret Nytt projekt i sökrutan längst upp till höger skriver du skrivardrivrutin v4 och trycker på Retur. Då hämtas alla drivrutinsmallar vars namn innehåller söktexten.

  3. I den mellersta rutan väljer du Skrivardrivrutin V4.

  4. Skriv ett namn för din drivrutin i fältet Namn och välj sedan OK. Du kan till exempel skriva MyV4PrintDriver.

  5. I guiden Skapa en v4-utskriftsdrivrutin under Välj drivrutinsrenderingstyp: väljer du V4-utskriftsdrivrutin med anpassade återgivningsfilter (accepterar endast XPS).

  6. Lämna alla andra alternativ vid standardinställningarna och välj Nästa.

  7. I avsnittet Installationsinformation i guiden lämnar du alla alternativ vid standardinställningarna och väljer sedan Nästa.

  8. I avsnittet Installationsinformation (sida 2) i guiden lämnar du alla alternativ vid standardinställningarna och väljer sedan Nästa.

Microsoft Visual Studio använder föregående val för att generera projektfilerna för MyV4PrintDriver.

Verifiera de genererade drivrutinsfilerna

  1. Navigera till mappen för de genererade drivrutinsfilerna. Om du till exempel gav projektet namnet MyV4PrintDriver sparas filerna som standard på följande plats: Mina dokument > Visual Studio 2019 > Projects > MyV4PrintDriver > MyV4PrintDriver.

  2. Kontrollera att mappen innehåller följande filer:

    Filnamn Filtyp
    MyV4PrintDriver.gpd Skrivarbeskrivningsfil
    MyV4PrintDriver.inf Installationsinformationsfil
    MyV4PrintDriver.vcxproj C++-projektfil
    MyV4PrintDriver.vcxproj.filters C++ Projektfilterfil
    MyV4PrintDriver-manifest.ini Konfigurationsinställningsfil (utskriftsdrivrutinsmanifestet)
    V4PrintDriver-Intellisense.js JavaScript-fil för Intellisense
    V4PrintDriver-Intellisense-Windows8.1.js JavaScript-fil för Intellisense

Observera från föregående tabell att en av filerna som skapas är en INF-fil. Observera att Visual Studio skapade en inf-skeletfil som måste slutföras så att den kan användas för att installera drivrutinen.

Skapa ett unikt PrinterDriverID för drivrutinen

  1. I Menyn Visual Studio Tools väljer du Skapa GUID.

  2. Välj alternativ 4. Registerformat och välj knappen Kopiera .

  3. Expandera noden MyV4PrintDriver i Solution Explorer i Visual Studio.

  4. Välj Drivrutinsfiler och titta sedan på värdet för fältet Unik identifierare i fönstret Egenskaper. Ersätt det här värdet med det GUID som du genererade med klistra in.

Slutför INF-filen

I Projektet MyV4PrintDriver bör det finnas en post för Drivrutinsfiler. Öppna detta och filen MyV4PrintDriver.inf bör visas. Öppna den här filen.

De första två raderna i INF-filen är upphovsrättsmeddelandet för drivrutinspaketet.

Rad 1 innehåller året och namnet på ditt företag. Ersätt tecknen YYYY med det aktuella året och ersätt tecknen <Tillverkarens namn> med namnet på ditt företag.

Rad 2 beskriver innehållet i drivrutins-INF inklusive information om tillverkarens namn och enhetsmodell. Ersätt tecknen <Tillverkarens namn> med namnet på ditt företag och ersätt tecknen < i skrivarmodellen> med modellnamnet på den skrivare som stöds av drivrutinen.

Om till exempel året är 2021 och företagets namn är Fabrikam och utskriftsenhetsmodellen är 1234, skriver du följande:

; Copyright (c) 2021 Fabrikam
; INF file for the Fabrikam 1234 print driver

2. Kontrollera att avsnittet [Version] är korrekt

Hitta raden som innehåller [Version].

  • Kontrollera och se till att du ser den här raden:

    ClassVer=4.0
    
  • Kontrollera och se till att du ser den här raden:

    Signature="$WINDOWS NT$"
    

3. Konfigurera avsnittet [SourceDisksFiles]

Hitta raden som innehåller [SourceDisksFiles].

Nedan skriver du följande rader:

MyV4PrintDriver.gpd=1
MyV4PrintDriver-manifest.ini=1
MyV4PrintDriverRenderFilter-PipelineConfig.xml=1
MyV4PrintDriverRenderFilter.dll=1

4. Konfigurera avsnittet [DriverFiles]

Hitta raden som innehåller [DriverFiles].

Nedan skriver du följande rader:

MyV4PrintDriver.gpd
MyV4PrintDriver-manifest.ini
MyV4PrintDriverRenderFilter-PipelineConfig.xml
MyV4PrintDriverRenderFilter.dll

5. Konfigurera avsnittet [Standard.NT$ARCH$]

Hitta raden som innehåller [Standard.NT$ARCH$].

Det här avsnittet refererar till Install avsnittet i INF för varje modell. Om skrivarens modell till exempel är Fabrikam 1234 skriver du följande:

"Fabrikam 1234"=DriverInstall, USBPRINT\\Fabrikam1234
"Fabrikam 1234"=DriverInstall, WSDPRINT\\Fabrikam1234

6. Lägg till PrinterDriverID i INF-filen

Expandera noden MyV4PrintDriver i Solution Explorer i Visual Studio.

Välj Drivrutinsfiler och titta sedan på värdet för fältet Unik identifierare i fönstret Egenskaper. Det här är drivrutins-ID :t (GUID). Markera den och kopiera den.

Skriv följande rad i avsnittet [Standard.NT$ARCH$] i INF-filen:

"Fabrikam 1234"=DriverInstall,

Efter kommatecknet klistrar du sedan in det GUID som du kopierade i föregående steg. Det slutförda avsnittet [Standard.NT$ARCH$] bör se ut så här:

"Fabrikam 1234"=DriverInstall, {GUID}
"Fabrikam 1234"=DriverInstall, USBPRINT\Fabrikam1234
"Fabrikam 1234"=DriverInstall, WSDPRINT\Fabrikam1234

7. Konfigurera avsnittet [Strängar]

Hitta raden som innehåller [Strängar].

Nedan visas definitionen av strängen ManufacturerName . Ersätt tecknen <Tillverkarens namn> med namnet på ditt företag för att ange en tillverkares namn på målskrivaren och ta bort resten av raden som innehåller ; ATT GÖRA:

Om företagets namn till exempel är Fabrikam skriver du följande:

ManufacturerName="Fabrikam"

8. Spara INF-filen

När du har slutfört INF-filen bör den se ut så här:

; Copyright (c) 2021 Fabrikam
; INF file for the Fabrikam 1234 print driver

[Version]
Signature="$Windows NT$"
Class=Printer
ClassGuid={4D36E979-E325-11CE-BFC1-08002BE10318}
Provider=%ManufacturerName%
CatalogFile=MyV4PrintDriver.cat
ClassVer=4.0
DriverVer=03/17/2014,1.0.0.0
PnpLockdown=1

[Manufacturer]
%ManufacturerName%=Standard,NT$ARCH$

[Standard.NT$ARCH$]
"Fabrikam 1234"=DriverInstall, {GUID}
"Fabrikam 1234"=DriverInstall, USBPRINT\Fabrikam1234
"Fabrikam 1234"=DriverInstall, WSDPRINT\Fabrikam1234

[DriverInstall]
CopyFiles=DriverFiles

[DriverFiles]
MyV4PrintDriver.gpd
MyV4PrintDriver-manifest.ini
MyV4PrintDriverRenderFilter-PipelineConfig.xml
MyV4PrintDriverRenderFilter.dll

[DestinationDirs]
DefaultDestDir = 66000

[SourceDisksNames]
1 = %DiskName%,,,""

[SourceDisksFiles]
MyV4PrintDriver.gpd=1
MyV4PrintDriver-manifest.ini=1
MyV4PrintDriverRenderFilter-PipelineConfig.xml=1
MyV4PrintDriverRenderFilter.dll=1

[Strings]
ManufacturerName="Fabrikam"
DiskName="MyV4PrintDriver Installation Disk"

Uppdatera drivrutinsfiler-listan

  1. I Visual Studio expanderar du noden Solution Explorer i MyV4PrinterDriver.

  2. Välj filen MyV4PrintDriver.gpd och dra den till noden Drivrutinsfiler .

  3. Gör samma sak med MyV4PrintDriver-manifest.ini.

Lägg till pipelinekonfigurationsfilen i drivrutinspaketet

  1. I Solution Explorer väljer du och håller (eller högerklickar på) MyV4PrintDriver-projektet och väljer sedan Egenskaper.

  2. I fönstret Egenskapssidor för MyV4PrintDriver expanderar du Konfigurationsegenskaper i det vänstra fönstret.

  3. Expandera Drivrutinsinstallation och välj sedan Paketfiler.

  4. I den högra rutan väljer du och klickar sedan på <raden Redigera...> i de listade filerna.

    Välj paketfiler för att redigera raden.

  5. Ersätt platshållaren med den relativa sökvägen för pipelinekonfigurationsfilen, ../MyV4PrintDriver Render Filter/MyV4PrintDriverRenderFilter-PipelineConfig.xmltill exempel , och klicka sedan på OK.

    Ersätt platshållaren med den relativa sökvägen.

Lägg till en referens till återgivningsfiltret i drivrutinspaketet

  1. I Visual Studio expanderar du noden Solution Explorer i MyV4PrinterDriver.

  2. Välj och håll (eller högerklicka) noden Referenser –> välj Lägg till referens.

  3. Markera kryssrutan för Återgivningsfilter för MyV4PrintDriver och välj sedan OK.

Konfigurera drivrutinslösningen för felsökning och distribution

  1. I Solution Explorer väljer du och håller (eller högerklickar på) MyV4PrintDriver-projektet och väljer sedan Egenskaper.

  2. I fönstret Egenskapssidor för MyV4PrintDriver expanderar du Konfigurationsegenskaper i det vänstra fönstret.

  3. Expandera Drivrutinsinstallation och välj sedan Distribution. Gör följande i den högra rutan:

    • Kontrollera att måldatorns namn är konfigurerat. Om inte väljer du "..." och följ anvisningarna i guiden Konfigurera enheter för att konfigurera en fjärrmåldator.

    • Kontrollera Ta bort tidigare drivrutinsversioner innan distributionen.

    • Välj Installera/installera om och verifiera och välj sedan Standardinstallationsuppgift för skrivardrivrutinspaket i listrutan.

    • Skriv namnet på drivrutinen i fältet Valfria argument (utan citattecken runt namnet).

    • Välj OK.

Konfigurera drivrutinssignering

  1. I Solution Explorer väljer du och håller (eller högerklickar på) MyV4PrintDriver-projektet och väljer sedan Egenskaper.

  2. I fönstret Egenskapssidor för MyV4PrintDriver expanderar du Konfigurationsegenskaper i det vänstra fönstret.

  3. Expandera Drivrutinssignering och välj sedan Allmänt.

  4. I den högra rutan bekräftar du att teckenläget är inställt på Testtecken.

  5. Välj Testcertifikat och välj sedan Skapa testcertifikat... i listrutan.

  6. Välj TimeStampServer och välj sedan Verisign i listrutan.

  7. Välj OK.

Skapa och distribuera drivrutinen

  1. I Solution Explorer väljer du och håller (eller högerklickar på) Solution MyV4PrintDriver (2 projekt) och väljer Skapa lösning.

  2. När byggprocessen är klar installeras drivrutinen automatiskt. Kontrollera att det inte finns några fel i utdatafönstret .

Testa drivrutinen

Skapa en utskriftskö med antingen plug-and-play eller guiden Lägg till skrivare.

Mer information om INF-filer för v4-skrivardrivrutinen finns i INF för V4-drivrutin.

Observera att mappen MyV4PrintDriver Render Filter har skapats förutom filerna i föregående tabell. Det här är projektmallen för återgivningsfilter och utgör en bra grund för att skapa ett XPS-återgivningsfilter och en konfigurationsfil för XPS-filterpipelinen. Mer information om XPS-återgivningsfilter finns i XPSDrv-återgivningsmodulen.