Función WdfIoQueueRetrieveRequestByFileObject (wdfio.h)
[Se aplica a KMDF y UMDF]
El método WdfIoQueueRetrieveRequestByFileObject recupera la siguiente solicitud de E/S disponible, de una cola de E/S especificada, asociada a un objeto de archivo especificado.
Sintaxis
NTSTATUS WdfIoQueueRetrieveRequestByFileObject(
[in] WDFQUEUE Queue,
[in] WDFFILEOBJECT FileObject,
[out] WDFREQUEST *OutRequest
);
Parámetros
[in] Queue
Identificador de un objeto de cola de marco.
[in] FileObject
Identificador de un objeto de archivo de marco.
[out] OutRequest
Puntero a una ubicación que recibe un identificador de un objeto de solicitud de marco. Si WdfIoQueueRetrieveRequestByFileObject no devuelve STATUS_SUCCESS, no establece el valor de la ubicación.
Valor devuelto
WdfIoQueueRetrieveRequestByFileObject devuelve STATUS_SUCCESS si la operación se realiza correctamente. De lo contrario, este método podría devolver uno de los siguientes valores:
Código devuelto | Descripción |
---|---|
|
El controlador proporcionó un identificador no válido. |
|
El marco alcanzó el final de la cola de E/S. |
|
La cola de E/S especificada está configurada para el método de distribución en paralelo. |
|
La cola de E/S especificada está administrada por energía y su dispositivo está en estado de bajo consumo. |
Este método también podría devolver otros valores NTSTATUS.
Se produce una comprobación de errores si el controlador proporciona un identificador de objeto no válido.
Comentarios
Un controlador que ha configurado una cola de E/S para el envío manual o secuencial podría llamar a WdfIoQueueRetrieveRequestByFileObject. Para obtener más información sobre el uso de WdfIoQueueRetrieveRequestByFileObject con los métodos de distribución manual o secuencial, vea Dispatching Methods for I/O Requests.
Después de llamar a WdfIoQueueRetrieveRequestByFileObject para obtener una solicitud de E/S, el controlador posee la solicitud y debe procesar la solicitud de E/S de alguna manera.
Para obtener más información sobre el método WdfIoQueueRetrieveRequestByFileObject , vea Administración de colas de E/S.
Ejemplos
En el ejemplo de código siguiente se obtiene, de una cola de E/S especificada, un identificador al siguiente objeto de solicitud de marco asociado a un objeto de archivo de marco especificado.
WDFREQUEST request;
status = WdfIoQueueRetrieveRequestByFileObject(
queue,
fileObject,
&request
);
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Universal |
Versión mínima de KMDF | 1.0 |
Versión mínima de UMDF | 2.0 |
Encabezado | wdfio.h (incluir Wdf.h) |
Library | Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF) |
IRQL | <= DISPATCH_LEVEL |
Reglas de cumplimiento de DDI | DoubleCompletion(kmdf), DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |