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 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.

Comentarios

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

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 Value
Plataforma de destino Universal
Versión mínima de KMDF 1.0
Encabezado wdfdevice.h (incluir Wdf.h)
Library 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