WdfDeviceGetFileObject-Funktion (wdfdevice.h)
[Gilt nur für KMDF]
Die WdfDeviceGetFileObject--Methode gibt ein Handle an das Frameworkdateiobjekt zurück, das einem angegebenen WDM-Dateiobjekt zugeordnet ist.
Syntax
WDFFILEOBJECT WdfDeviceGetFileObject(
[in] WDFDEVICE Device,
[in] PFILE_OBJECT FileObject
);
Parameter
[in] Device
Ein Handle zu einem Framework-Geräteobjekt.
[in] FileObject
Ein Zeiger auf eine WDM-FILE_OBJECT-Struktur.
Rückgabewert
WdfDeviceGetFileObject gibt ein Handle an das Frameworkdateiobjekt zurück, das dem angegebenen WDM-Dateiobjekt zugeordnet ist. Wenn kein Frameworkdateiobjekt für die Datei erstellt wurde oder der FileObject Zeiger ungültig ist, gibt die Methode NULL-zurück.
Wenn der Treiber ein ungültiges Objekthandle bereitstellt, tritt eine Fehlerüberprüfung auf.
Bemerkungen
Weitere Informationen zu Framework-Dateiobjekten finden Sie unter Framework File Objects.
Beispiele
Im folgenden Codebeispiel wird ein Zeiger auf ein benanntes WDM-Geräteobjekt und das entsprechende WDM-Dateiobjekt abgerufen, wenn der angeforderte Zugriff auf die Objekte gewährt werden kann. Anschließend ruft das Beispiel ein Handle für das Frameworkdateiobjekt ab, das dem WDM-Dateiobjekt zugeordnet ist.
PFILE_OBJECT pWdmFileObject = NULL;
PDEVICE_OBJECT pWdmDeviceObject = NULL;
WDFFILEOBJECT fileObject = NULL;
NTSTATUS status = STATUS_SUCCESS;
BOOLEAN success = TRUE;
status = IoGetDeviceObjectPointer(
&inputFileName, // File name
FILE_ALL_ACCESS, // Access mask
&pWdmFileObject, // Output pointer of WDM file object
&pWdmDeviceObject // Output pointer of WDM device object
);
if(!NT_SUCCESS(status)){
success = FALSE;
break;
}
fileObject = WdfDeviceGetFileObject(
gDeviceObject, // Handle to device object
pWdmFileObject // Handle to WDM file object
);
if(fileObject == NULL){
success = FALSE;
}
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform- | Universal |
Minimale KMDF-Version | 1.0 |
Header- | wdfdevice.h (einschließen Wdf.h) |
Library | Wdf01000.sys (siehe Framework-Bibliotheksversionsverwaltung.) |
IRQL- | <= DISPATCH_LEVEL |
DDI-Complianceregeln | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |