Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
De gränssnitt som Windows Driver Frameworks (WDF) tillhandahåller drivrutiner är objektbaserade. Ramverket definierar flera objekt. Dessa objekt exporterar metoder (funktioner) och egenskaper (data) som drivrutiner kan komma åt. Framework-objekt initierar också händelser, som drivrutiner kan stödja genom att tillhandahålla funktioner för återanrop av händelser.
Ramverksbaserade drivrutiner har aldrig direkt åtkomst till ramverksobjekt. Drivrutiner refererar istället till objekten med hjälp av handtag, som drivrutinen skickar som indata till objektmetoder.
Alla ramverksobjekt har följande egenskaper:
Antal referenser
Ramverket upprätthåller antalet referenser till varje objekt. När ramverket skapar ett objekt anger det objektets referensantal till ett. När ramverket har slutförts med ett objekt minskar det antalet referenser. Ramverket kan inte ta bort objektet förrän referensantalet har minskats till noll, så drivrutiner kan förhindra borttagning av ett objekt genom att öka referensantalet.
Kontextutrymme
Ramverksbaserade drivrutiner kan skapa objektspecifikt kontextutrymme för varje ramverksobjekt som drivrutinen tar emot eller skapar. Drivrutiner bör lagra alla objektspecifika data i ett objekts kontextutrymme. Mer information om kontextutrymme finns i Framework Object Context Space.
Återanropsfunktioner för borttagning
Drivrutiner kan registrera återanropsfunktioner som ramverket anropar när det tar bort ett objekt. Återanropsfunktionerna kan ta bort drivrutinstilldelade resurser, till exempel objektspecifika minnesallokeringar. Mer information om dessa återanropsfunktioner finns i Framework Object Life Cycle.
överordnat objekt
Alla ramverksobjekt kan ha ett överordnat objekt. Ramverket anger ett överordnat standardobjekt för de flesta objekt. När en drivrutin skapar ett objekt kan den ange ett överordnat objekt som åsidosätter objektets överordnade standardobjekt. Om du vill ange ett objekts överordnade objekt anger drivrutinerna ParentObject medlem i objektets WDF_OBJECT_ATTRIBUTES struktur. (För några objekttyper kan drivrutiner inte åsidosätta det överordnade standardobjektet.) När ramverket eller en drivrutin tar bort ett överordnat objekt tar ramverket även bort det överordnade objektets underordnade objekt.
En översikt över alla objekt som definieras av WDF finns i Sammanfattning av framework-objekt.