Dela via


Framework-filobjekt

Varning

UMDF 2 är den senaste versionen av UMDF och ersätter UMDF 1. Alla nya UMDF-drivrutiner ska skrivas med UMDF 2. Inga nya funktioner läggs till i UMDF 1 och det finns begränsat stöd för UMDF 1 på nyare versioner av Windows 10. Universella Windows-drivrutiner måste använda UMDF 2.

De arkiverade UMDF 1-exemplen finns i Windows 11 version 22H2 – maj 2022 Uppdatering av drivrutinsexempel.

Mer information finns i Komma igång med UMDF.

Ramverksfilobjektet exponeras för drivrutiner av IWDFFile--gränssnittet. Det är ramverksrepresentationen av den öppnade enheten. När ett program öppnar enheten via funktionen Microsoft Win32 CreateFile skapar ramverket ett filobjekt som representerar den öppnade enhetsinstansen. Därför motsvarar ramverksfilobjektet den Win32-referens som returneras från programmets anrop till CreateFile. Ramverket kan skapa flera filobjekt som är associerade med en enda enhet. Varje filobjekt skapas för varje lyckat anrop till CreateFile. Alla I/O-åtgärder, till exempel läsningar och skrivningar, riktas mot en specifik filobjektinstans.

Obs Alla begäranden som skickas till UMDF-drivrutiner är associerade med filobjekt. Begäranden som skickas till WDM- och KMDF- drivrutiner är dock ibland inte associerade med filobjekt.

En UMDF-drivrutin kan anropa metoden IWDFIoRequest::GetFileObject för att hämta filobjektet som är associerat med en begäran.

När drivrutinen anropar GetFileObjectökar ramverket referensantalet i gränssnittet. Din chaufför ansvarar för att släppa referensen när han är klar med gränssnittspekaren. Om du vill göra det använder du antingen en smart pekare som automatiskt minskar referensantalet när objektet hamnar ur kontexten, eller anropar Release i gränssnittet när det är klart. Ett kodexempel som visar hur du använder en smart pekare finns i GetFileObject.