Función RegisterRawInputDevices (winuser.h)

Registra los dispositivos que proporcionan los datos de entrada sin procesar.

Sintaxis

BOOL RegisterRawInputDevices(
  [in] PCRAWINPUTDEVICE pRawInputDevices,
  [in] UINT             uiNumDevices,
  [in] UINT             cbSize
);

Parámetros

[in] pRawInputDevices

Tipo: PCRAWINPUTDEVICE

Matriz de estructuras RAWINPUTDEVICE que representan los dispositivos que proporcionan la entrada sin procesar.

[in] uiNumDevices

Tipo: UINT

Número de estructuras RAWINPUTDEVICE a las que apunta pRawInputDevices.

[in] cbSize

Tipo: UINT

Tamaño, en bytes, de una estructura RAWINPUTDEVICE .

Valor devuelto

Tipo: BOOL

TRUE si la función se realiza correctamente; de lo contrario, FALSE. Si se produce un error en la función, llame a GetLastError para obtener más información.

Comentarios

Para recibir mensajes WM_INPUT , una aplicación debe registrar primero los dispositivos de entrada sin procesar mediante RegisterRawInputDevices. De forma predeterminada, una aplicación no recibe entradas sin procesar.

Para recibir mensajes WM_INPUT_DEVICE_CHANGE , una aplicación debe especificar la marca RIDEV_DEVNOTIFY para cada clase de dispositivo especificada por los campos usUsagePage y usUsage de la estructura RAWINPUTDEVICE . De forma predeterminada, una aplicación no recibe WM_INPUT_DEVICE_CHANGE notificaciones para la llegada y eliminación de dispositivos de entrada sin procesar.

Si una estructura RAWINPUTDEVICE tiene establecida la marca RIDEV_REMOVE y el parámetro hwndTarget no está establecido en NULL, se producirá un error en la validación de parámetros.

Solo se puede registrar una ventana por clase de dispositivo de entrada sin procesar para recibir entradas sin procesar dentro de un proceso (la ventana pasada en la última llamada a RegisterRawInputDevices). Por este motivo, RegisterRawInputDevices no debe usarse desde una biblioteca, ya que puede interferir con cualquier lógica de procesamiento de entrada sin procesar que ya esté presente en las aplicaciones que la cargan.

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado winuser.h (incluir Windows.h)
Library User32.lib
Archivo DLL User32.dll
Conjunto de API ext-ms-win-ntuser-rawinput-l1-1-0 (introducido en Windows 10, versión 10.0.14393)

Consulte también

Conceptual

RAWINPUTDEVICE

Entrada sin procesar

Referencia

WM_INPUT