Estrutura RAWINPUTDEVICE (winuser.h)

Define informações para os dispositivos de entrada brutos.

Sintaxe

typedef struct tagRAWINPUTDEVICE {
  USHORT usUsagePage;
  USHORT usUsage;
  DWORD  dwFlags;
  HWND   hwndTarget;
} RAWINPUTDEVICE, *PRAWINPUTDEVICE, *LPRAWINPUTDEVICE;

Membros

usUsagePage

Tipo: USHORT

de página uso dede coleção de nível superior para o dispositivo de entrada bruto. Consulte clientes HID com suporte no Windows para obter detalhes sobre os valores possíveis.

usUsage

Tipo: USHORT

coleção de nível superiorID de uso para o dispositivo de entrada bruto. Consulte clientes HID com suporte no Windows para obter detalhes sobre os valores possíveis.

dwFlags

Tipo: DWORD

Sinalizador de modo que especifica como interpretar as informações fornecidas pelo usUsagePage e usUsage. Pode ser zero (o padrão) ou um dos valores a seguir. Por padrão, o sistema operacional envia entrada bruta de dispositivos com o TLC () de coleção de nível superior especificado para o aplicativo registrado, desde que ele tenha o foco da janela.

Valor Significado
RIDEV_REMOVE
0x00000001
Se definido, isso removerá a coleção de nível superior da lista de inclusão. Isso informa ao sistema operacional para interromper a leitura de um dispositivo que corresponde à coleção de nível superior.
RIDEV_EXCLUDE
0x00000010
Se definido, isso especifica as coleções de nível superior a serem excluídas ao ler uma página de uso completa. Esse sinalizador afeta apenas um TLC cuja página de uso já está especificada com RIDEV_PAGEONLY.
RIDEV_PAGEONLY
0x00000020
Se definido, isso especifica todos os dispositivos cuja coleção de nível superior é do usUsagePageespecificado. Observe que usUsage deve ser zero. Para excluir uma coleção de nível superior específica, use RIDEV_EXCLUDE.
RIDEV_NOLEGACY
0x00000030
Se definido, isso impede que todos os dispositivos especificados pelo usUsagePage ou usUsage gerem mensagens herdadas . Isso é apenas para o mouse e o teclado. Consulte Comentários.
RIDEV_INPUTSINK
0x00000100
Se definido, isso permite que o chamador receba a entrada mesmo quando o chamador não estiver em primeiro plano. Observe que hwndTarget devem ser especificados.
RIDEV_CAPTUREMOUSE
0x00000200
Se definido, o clique no botão do mouse não ativa a outra janela. RIDEV_CAPTUREMOUSE só poderão ser especificados se RIDEV_NOLEGACY for especificado para um dispositivo do mouse.
RIDEV_NOHOTKEYS
0x00000200
Se definido, as teclas de teclas de teclado definidas pelo aplicativo não serão tratadas. No entanto, as teclas de acesso do sistema; por exemplo, ALT+TAB e CTRL+ALT+DEL, ainda são tratados. Por padrão, todas as teclas de teclas de teclado são tratadas. RIDEV_NOHOTKEYS pode ser especificado mesmo se RIDEV_NOLEGACY não for especificado e hwndTarget NULL.
RIDEV_APPKEYS
0x00000400
Se definido, as chaves de comando do aplicativo serão tratadas. RIDEV_APPKEYS só poderão ser especificados se RIDEV_NOLEGACY for especificado para um dispositivo de teclado.
RIDEV_EXINPUTSINK
0x00001000
Se definido, isso permitirá que o chamador receba entrada em segundo plano somente se o aplicativo em primeiro plano não processá-lo. Em outras palavras, se o aplicativo em primeiro plano não estiver registrado para entrada bruta, o aplicativo em segundo plano registrado receberá a entrada.
Windows XP: Esse sinalizador não tem suporte até o Windows Vista
RIDEV_DEVNOTIFY
0x00002000
Se definido, isso permite que o chamador receba WM_INPUT_DEVICE_CHANGE notificações para a chegada do dispositivo e a remoção do dispositivo.
Windows XP: Esse sinalizador não tem suporte até o Windows Vista

hwndTarget

Tipo: HWND

Um identificador para a janela de destino. Se NULL, os eventos de entrada brutos seguem o foco do teclado para garantir que apenas a janela do aplicativo focalizado receba os eventos.

Observações

Se RIDEV_NOLEGACY estiver definido para um mouse ou teclado, o sistema não gerará nenhuma mensagem herdada para esse dispositivo para o aplicativo. Por exemplo, se o TLC do mouse estiver definido com RIDEV_NOLEGACY, WM_LBUTTONDOWN e mensagens de mouse herdadas relacionadas não serão geradas. Da mesma forma, se o TLC do teclado estiver definido com RIDEV_NOLEGACY, WM_KEYDOWN e mensagens de teclado herdadas relacionadas não serão geradas.

Se RIDEV_REMOVE estiver definido e o membro hwndTarget não estiver definido como NULL, função RegisterRawInputDevices falhará.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows XP [somente aplicativos da área de trabalho]
servidor com suporte mínimo Windows Server 2003 [somente aplicativos da área de trabalho]
cabeçalho winuser.h (inclua Windows.h)

Consulte também

Conceitual

GetRegisteredRawInputDevices

de Entrada Bruta

introdução aos dispositivos de interface humana (HID)

clientes HID com suporte no Windows

página inicial DO HID USB

de referência de

RegisterRawInputDevices