Compartir a través de


Función WdfRequestRequeue (wdfrequest.h)

[Se aplica a KMDF y UMDF]

El método WdfRequestRequeue devuelve una solicitud de E/S al encabezado de la cola de E/S desde la que se entregó al controlador.

Sintaxis

NTSTATUS WdfRequestRequeue(
  [in] WDFREQUEST Request
);

Parámetros

[in] Request

Identificador de un objeto de solicitud de marco.

Valor devuelto

WdfRequestRequeue 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
STATUS_INVALID_PARAMETER
Un parámetro de entrada no es válido.
STATUS_INVALID_DEVICE_REQUEST
Este valor se devuelve si se produce una de las siguientes acciones:
  • La solicitud de E/S especificada no procede de una cola de E/S.
  • El controlador no posee la solicitud de E/S.
  • La solicitud se puede cancelar.
  • El método de distribución de la cola no es manual.
 

Este método también puede devolver otros valores de NTSTATUS.

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

Observaciones

Un controlador puede llamar a WdfRequestRequeue solo si usa el método de distribución manual para la cola de E/S.

Si el controlador llama a WdfRequestRequeue después de llamar a WdfIoQueuePurge, el intento de requeue puede realizarse correctamente antes de que se complete la purga. En las versiones 1.9 y anteriores de KMDF, esta secuencia hace que el sistema operativo se bloquee. Este problema se ha corregido en la versión 1.11 y posteriores de KMDF.

Para obtener más información sobre WdfRequestRequeue, vea solicitudes de E/S de requeuing.

Ejemplos

En el ejemplo de código siguiente se devuelve una solicitud de E/S especificada a la cola desde la que el controlador recibió la solicitud.

NTSTATUS status;

status = WdfRequestRequeue(request);

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), InvalidReqAccess(kmdf), InvalidReqAccessLocal(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)