Partilhar via


IOCTL_UMDF_HID_SET_OUTPUT_REPORT IOCTL (hidport.h)

O código de controle IOCTL_UMDF_HID_SET_OUTPUT_REPORT envia um relatório de saída para um de coleção de nível superior.

Código principal

IRP_MJ_DEVICE_CONTROL

Buffer de entrada

Um driver baseado em UMDF chama IWDFRequest::GetInputMemory para recuperar um buffer de entrada alocado pelo solicitante que contém um relatório de saída.

O driver recupera a ID do relatório associada à coleção de nível superior chamando IWDFRequest::GetDeviceIoControlParameters e fornecendo o parâmetro pOutBufferSize, conforme mostrado no exemplo a seguir.

UCHAR reportId;
SIZE_T outBufferSize;

FxRequest->GetDeviceIoControlParameters(NULL, NULL, &outBufferSize);
reportId = (UCHAR)outBufferSize;

Comprimento do buffer de entrada

Nenhum.

Buffer de saída

Nenhum.

Comprimento do buffer de saída

O tamanho do buffer recuperado chamando IWDFIoRequest::GetOutputMemory.

Bloco de status

Os minidrivers HID que executam a E/S para o dispositivo também devem:

  • Chame IWDFRequest::SetInformation para definir o número de bytes transferidos para o dispositivo.
  • Chame IWDFRequest::Complete com S_OK para concluir a solicitação sem erros. Caso contrário, defina o código de erro HRESULT apropriado.

Requisitos

Requisito Valor
cabeçalho hidport.h

Consulte também

IOCTL_HID_SET_OUTPUT_REPORT

IOCTL_UMDF_HID_GET_INPUT_REPORT