Compartir a través de


Función WdfRequestWdmGetIrp (wdfrequest.h)

[Solo se aplica a KMDF]

El método WdfRequestWdmGetIrp devuelve la estructura IRP de WDM asociada a un objeto de solicitud de marco especificado.

Sintaxis

PIRP WdfRequestWdmGetIrp(
  [in] WDFREQUEST Request
);

Parámetros

[in] Request

Identificador de un objeto de solicitud de marco.

Valor devuelto

WdfRequestWdmGetIrp devuelve un puntero a una estructura IRP .

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

Comentarios

El controlador no debe acceder a la estructura IRP de una solicitud después de completar la solicitud de E/S.

Para obtener más información sobre WdfRequestWdmGetIrp, vea Obtener información sobre una solicitud de E/S.

Ejemplos

El siguiente ejemplo de código forma parte de una función de devolución de llamada EvtIoDeviceControl que obtiene el IRP de WDM asociado a una solicitud de E/S y, a continuación, llama a IoGetNextIrpStackLocation para obtener la ubicación de pila de E/S del controlador siguiente inferior.

VOID
MyEvtIoDeviceControl(
    IN WDFQUEUE  Queue,
    IN WDFREQUEST  Request,
    IN size_t  OutputBufferLength,
    IN size_t  InputBufferLength,
    IN ULONG  IoControlCode
    )
{
    PIRP  irp = NULL;
    PIO_STACK_LOCATION  nextStack;
...
    irp = WdfRequestWdmGetIrp(Request);
    nextStack = IoGetNextIrpStackLocation(irp);
...
}

Requisitos

Requisito Value
Plataforma de destino Universal
Versión mínima de KMDF 1.0
Encabezado wdfrequest.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), InvalidReqAccess(kmdf), InvalidReqAccessLocal(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

Consulte también

WdfRequestGetParameters