Skapa en ny enhetsfunktionsdrivrutin.

I den här artikeln förklarar vi hur du använder Visual Studio för att börja skriva en ny enhetsfunktionsdrivrutin. Enhetsfunktionsdrivrutiner skiljer sig från filterdrivrutiner, programvarudrivrutiner och filsystemdrivrutiner, som vi tar upp i andra artiklar. Information om enhetsfunktionsdrivrutiner och hur de skiljer sig från andra typer av drivrutiner finns i Vad är en drivrutin?Välja en drivrutinsmodelloch enhetsnoder och enhetsstackar.

Börja med att ta reda på var enheten passar i listan över tekniker som beskrivs i Enhets- och drivrutinstekniker. Mer information om vilka drivrutinsmodeller som är tillgängliga för din enhet finns i dokumentationen för just den tekniken. Den rekommenderade drivrutinsmodellen varierar från en teknik till en annan. För vissa tekniker rekommenderar dokumentationen att du använder User Mode Driver Framework (UMDF) eller Kernel Mode Driver Framework (KMDF). För andra tekniker förklarar dokumentationen hur du skapar en minidrivrutin som är en del av ett drivrutinspar. Minidrivers kallas också för olika namn, inklusive "miniport" och "miniklass".

Ta reda på vilket av följande fall som beskriver din rekommendation för drivrutinsmodellen och följ stegen:

Fall 1: Dokumentationen för din teknik rekommenderar UMDF

  1. Starta Visual Studio.
  2. Välj Skapa ett nytt projekt i startdialogrutan eller välj Ny | Project från Visual Studio File-menyn.
  3. I den högra rutan i dialogrutan Skapa ett nytt projekt letar du upp och väljer Användarlägesdrivrutin (UMDF V2).
  4. Välj Nästa.
  5. Fyll i rutorna Projektnamn, Platsoch Lösningsnamn och välj Skapa. Mer information finns i Skriva en UMDF-drivrutin baserat på en mall.

    Anmärkning

    När du skapar en ny UMDF-drivrutin måste du välja ett drivrutinsnamn med högst 32 tecken. Den här längdgränsen definieras i wdfglobals.h.

  6. Nu har du ett drivrutinsprojekt som implementerar den allmänna kod som krävs av de flesta UMDF-drivrutiner. Nu kan du ange den kod som är specifik för din enhet. Mer information om de gränssnitt som du behöver implementera finns i dokumentationen för din teknik.

Fall 2: Dokumentationen för din teknik rekommenderar KMDF

  1. Starta Visual Studio.
  2. Välj Skapa ett nytt projekt i startdialogrutan eller välj Ny | Project från Visual Studio File-menyn.
  3. I den högra rutan i dialogrutan Skapa ett nytt projekt letar du upp och väljer KMDF(Kernel Mode Driver).
  4. Välj Nästa.
  5. Fyll i rutorna Projektnamn, Platsoch Lösningsnamn och välj Skapa. Mer information finns i Skriva en KMDF-drivrutin baserat på en mall.

    Anmärkning

    När du skapar en ny KMDF-drivrutin måste du välja ett drivrutinsnamn med högst 32 tecken. Den här längdgränsen definieras i wdfglobals.h.

  6. Nu har du ett drivrutinsprojekt som implementerar den allmänna kod som krävs av de flesta KMDF-drivrutiner. Nu kan du ange den kod som är specifik för din enhet. Läs dokumentationen för din teknik för att lära dig mer om de metoder som du behöver implementera.

Fall 3: Dokumentationen för din teknik beskriver en minidrivermodell

Om enhetens teknik har en miniport, miniklass eller någon annan minidrivermodell kontrollerar du om Visual Studio har en specifik mall för modellen.

  1. Starta Visual Studio.
  2. Välj Skapa ett nytt projekt i startdialogrutan eller välj Ny | Project från Visual Studio File-menyn.
  3. I den högra rutan i dialogrutan Skapa ett nytt projekt bläddrar du i listan över installerade mallar för att hitta en mall för den typ av drivrutin som du behöver skriva.
  4. Om du hittar en mall för din typ av drivrutin väljer du den.
  5. Välj Nästa.
  6. Fyll i rutorna Projektnamn, Platsoch Lösningsnamn och välj Skapa.
  7. Om du får en drivrutinsguide går du igenom guiden för att skapa drivrutinsprojektet.
  8. Nu har du ett drivrutinsprojekt som implementerar den allmänna kod som krävs av drivrutinen. Nu kan du ange den kod som är specifik för din enhet. Mer information om de funktioner som du behöver implementera finns i dokumentationen för din teknik.

Om din enhetsteknik har en minidrivermodell och du inte kan hitta en specifik mall för din typ av minimejsel, kommer WDM-mallen (Windows Driver Model) sannolikt att vara din startpunkt. Mer information finns i din teknikspecifika dokumentation. I sällsynta fall kan du använda KMDF för att skriva en minidrivrutin, men vanligtvis är startpunkten WDM.

  1. Starta Visual Studio.
  2. Välj Skapa ett nytt projekt i startdialogrutan eller välj Ny | Project från Visual Studio File-menyn.
  3. I den högra rutan i dialogrutan Skapa ett nytt projekt letar du upp och väljer Tom WDM-drivrutin.
  4. Välj Nästa.
  5. Fyll i rutorna Projektnamn, Platsoch Lösningsnamn och välj Skapa.
  6. Vid det här laget har du ett tomt WDM-drivrutinsprojekt. Högerklicka på drivrutinsprojektet i Solution Explorer-fönstret och välj Lägg till | Nytt objekt.
  7. I dialogrutan Lägg till nytt objekt anger du ett namn för filen .cpp och väljer Lägg till.

    Anmärkning

    Om du vill skapa en .c-fil i stället för en .cpp fil anger du ett namn som har filnamnstillägget .c.

  8. Mer information om de funktioner som du behöver implementera finns i dokumentationen för din teknik. När du implementerar och organiserar dina funktioner kan du välja att lägga till fler .cpp- eller .c-filer.