Compartir a través de


Función WdfRequestGetFileObject (wdfrequest.h)

[Se aplica a KMDF y UMDF]

El método WdfRequestGetFileObject recupera el objeto de archivo de marco asociado a una solicitud de E/S especificada.

Sintaxis

WDFFILEOBJECT WdfRequestGetFileObject(
  [in] WDFREQUEST Request
);

Parámetros

[in] Request

Identificador de un objeto de solicitud de marco.

Valor devuelto

WdfRequestGetFileObject devuelve un identificador al objeto de archivo de marco, si el marco ha creado un objeto de archivo para la solicitud especificada. De lo contrario, este método devuelve NULL . (Normalmente, un controlador prueba un valor devuelto de NULL si establece la marca de bits WdfFileObjectCanBeOptional en la estructura de WDF_FILEOBJECT_CONFIG).

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

Observaciones

El método WdfRequestGetFileObject devuelve NULL si:

  • No se ha llamado al controlador WdfDeviceInitSetFileObjectConfig y ha especificado un valor de WDF_FILEOBJECT_CLASS que hace que el marco cree objetos de archivo.
  • Otro controlador envió una solicitud de control de lectura, escritura o E/S al controlador sin enviar primero un tipo de solicitud de WdfRequestTypeCreate.
Para obtener más información sobre WdfRequestGetFileObject y objetos de archivo de marco, vea Framework File Objects.

Ejemplos

En el ejemplo de código siguiente se obtiene el objeto de archivo de una solicitud de E/S y, a continuación, se llama a una rutina definida por el controlador que obtiene un puntero al espacio de contexto del objeto de archivo.

VOID
MyEvtIoWrite(
    IN WDFQUEUE  Queue,
    IN WDFREQUEST  Request,
    IN size_t  Length
    )
{
    WDFFILEOBJECT  fileObject;
    PFILE_OPEN_CONTEXT  pOpenContext;

    fileObject = WdfRequestGetFileObject(Request);
    pOpenContext = GetFileObjectContext(fileObject)->OpenContext;
}

Requisitos

Requisito Valor
de la plataforma de destino de Universal
versión mínima de KMDF 1.0
versión mínima de UMDF 2.0
encabezado de wdfrequest.h (incluya Wdf.h)
biblioteca de Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF)
irQL <=DISPATCH_LEVEL
reglas de cumplimiento de DDI DriverCreate(kmdf), FileObjectConfigured(kmdf), InvalidReqAccess(kmdf), InvalidReqAccessLocal() kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

Consulte también

WDF_FILEOBJECT_CLASS

WdfDeviceInitSetFileObjectConfig