Função WdfRequestSetInformation (wdfrequest.h)

[Aplica-se a KMDF e UMDF]

O método WdfRequestSetInformation define informações de conclusão status para uma solicitação de E/S especificada.

Sintaxe

void WdfRequestSetInformation(
  [in] WDFREQUEST Request,
  [in] ULONG_PTR  Information
);

Parâmetros

[in] Request

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

[in] Information

A conclusão definida pelo driver status informações para a solicitação.

Retornar valor

Nenhum

Comentários

Um bug marcar ocorrerá se o driver fornecer um identificador de objeto inválido.

Os drivers baseados em estrutura usam o método WdfRequestSetInformation para fornecer informações específicas do driver associadas à conclusão de uma solicitação de E/S, como o número de bytes transferidos. Outros drivers podem obter essas informações chamando WdfRequestGetInformation.

Os drivers também podem especificar informações de status de conclusão chamando WdfRequestCompleteWithInformation.

Para obter mais informações sobre WdfRequestSetInformation, consulte Concluindo solicitações de E/S.

Exemplos

O exemplo de código a seguir define informações de conclusão de solicitação baseadas no valor do código de controle de E/S que uma função de retorno de chamada EvtIoDeviceControl recebe.

VOID
MyEvtIoDeviceControl(
    IN WDFQUEUE  Queue,
    IN WDFREQUEST  Request,
    IN size_t  OutputBufferLength,
    IN size_t  InputBufferLength,
    IN ULONG  IoControlCode
    )
{
    switch (IoControlCode) {
      case MY_IOCTL_CODE_1:
            WdfRequestSetInformation(
                                     Request,
                                     VALUE_1
                                     );
            status = STATUS_SUCCESS;                                     
            break;

      case MY_IOCTL_CODE_2:
            WdfRequestSetInformation(
                                     Request,
                                     VALUE_2
                                     );
            status = STATUS_SUCCESS;                                     
            break;

      case MY_IOCTL_CODE_3:
            WdfRequestSetInformation(
                                     Request,
                                     VALUE_3
                                     );
            status = STATUS_SUCCESS;
            break;

      default:
            status = STATUS_INVALID_DEVICE_REQUEST;
            break;
    }

    WdfRequestComplete(
                       Request,
                       status
                       );
}

Requisitos

Requisito Valor
Plataforma de Destino Universal
Versão mínima do KMDF 1.0
Versão mínima do UMDF 2,0
Cabeçalho wdfrequest.h (inclua Wdf.h)
Biblioteca Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF)
IRQL <=DISPATCH_LEVEL
Regras de conformidade da DDI DriverCreate(kmdf), InvalidReqAccess(kmdf), InvalidReqAccessLocal(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

Confira também

WdfRequestCompleteWithInformation

WdfRequestGetInformation