Compartilhar via


Função WdfRequestWdmGetIrp (wdfrequest.h)

[Aplica-se somente ao KMDF]

O método WdfRequestWdmGetIrp retorna a estrutura IRP do WDM associada a um objeto de solicitação de estrutura especificado.

Sintaxe

PIRP WdfRequestWdmGetIrp(
  [in] WDFREQUEST Request
);

Parâmetros

[in] Request

Um identificador para um objeto de solicitação de estrutura.

Valor de retorno

WdfRequestWdmGetIrp retorna um ponteiro para uma estrutura de IRP.

Uma verificação de bug ocorre se o driver fornece um identificador de objeto inválido.

Observações

O driver não deve acessar a estrutura IRP de uma solicitação após concluir a solicitação de E/S.

Para obter mais informações sobre WdfRequestWdmGetIrp, consulte Obtendo informações sobre uma solicitação de E/S.

Exemplos

O exemplo de código a seguir faz parte de uma função de retorno de chamada EvtIoDeviceControl que obtém o WDM IRP associado a uma solicitação de E/S e, em seguida, chama IoGetNextIrpStackLocation para obter o local da pilha de E/S do driver mais baixo.

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 Valor
da Plataforma de Destino Universal
versão mínima do KMDF 1.0
cabeçalho wdfrequest.h (inclua Wdf.h)
biblioteca Wdf01000.sys (consulte o Controle de Versão da Biblioteca da Estrutura.)
IRQL <=DISPATCH_LEVEL
regras de conformidade de DDI DriverCreate(kmdf), InvalidReqAccess(kmdf), InvalidReqAccessLocal(kmdf), kmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

Consulte também

WdfRequestGetParameters