Compartilhar via


IOCTL_GET_PHYSICAL_DESCRIPTOR IOCTL (hidclass.h)

A solicitação IOCTL_GET_PHYSICAL_DESCRIPTOR obtém o descritor físico de uma coleção de nível superior. Para um minidriver, esse descritor é o descritor do dispositivo HIDClass.

Para obter informações gerais sobre dispositivos HIDClass, consulte Coleções HID.

Código principal

IRP_MJ_DEVICE_CONTROL

Buffer de entrada

Parameters.DeviceIoControl.OutputBufferLength no local da pilha de E/S do IRP indica o tamanho, em bytes, do buffer de saída.

Buffer de saída

Irp->MdlAddress deve apontar para o buffer que receberá o descritor físico.

O minidriver HID copia o descritor físico para o buffer de usuário em Irp-UserBuffer>.

Bloco de status

O driver de classe HID define o membro Status de Irp-IoStatus> como STATUS_SUCCESS se a transferência foi concluída sem erros. Caso contrário, ele será definido como um código de erro NTSTATUS apropriado.

Os minidrivers HID que executam a E/S para o dispositivo definem os seguintes campos de Irp-IoStatus>:

  • As informações são definidas como o número de bytes transferidos do dispositivo.
  • O status será definido como STATUS_SUCCESS se a transferência for concluída sem erros. Caso contrário, ele será definido como um código de erro NTSTATUS apropriado.
Os minidrivers HID que chamam outros drivers com esse IRP para realizar a E/S em seu dispositivo devem garantir que o campo Informações do bloco status esteja correto e não altere o conteúdo do campo Status.

Requisitos

Requisito Valor
Cabeçalho hidclass.h (inclua Hidclass.h)

Confira também

HidD_GetPhysicalDescriptor