Compartir a través de


Función WdfDeviceGetFileObject (wdfdevice.h)

[Solo se aplica a KMDF]

El método WdfDeviceGetFileObject devuelve un identificador al objeto de archivo de marco asociado a un objeto de archivo WDM especificado.

Sintaxis

WDFFILEOBJECT WdfDeviceGetFileObject(
  [in] WDFDEVICE    Device,
  [in] PFILE_OBJECT FileObject
);

Parámetros

[in] Device

Identificador de un objeto de dispositivo de marco.

[in] FileObject

Puntero a una estructura de FILE_OBJECT WDM.

Valor devuelto

WdfDeviceGetFileObject devuelve un identificador al objeto de archivo de marco asociado al objeto de archivo WDM especificado. Si no se creó un objeto de archivo de marco para el archivo o si el puntero de FileObject no es válido, el método devuelve NULL.

Se produce una comprobación de errores si el controlador proporciona un identificador de objeto no válido.

Observaciones

Para obtener más información sobre los objetos de archivo de marco, vea Framework File Objects.

Ejemplos

En el ejemplo de código siguiente se obtiene un puntero a un objeto de dispositivo WDM con nombre y su objeto de archivo WDM correspondiente, si se puede conceder el acceso solicitado a los objetos. A continuación, el ejemplo obtiene un identificador para el objeto de archivo de marco asociado al objeto de archivo WDM.

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;
}

Requisitos

Requisito Valor
de la plataforma de destino de Universal
versión mínima de KMDF 1.0
encabezado de wdfdevice.h (incluya Wdf.h)
biblioteca de Wdf01000.sys (consulte Control de versiones de la biblioteca de marcos).
irQL <= DISPATCH_LEVEL
reglas de cumplimiento de DDI DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

Consulte también

IoGetDeviceObjectPointer