Skip to main content

IGameInput::RegisterDeviceCallback

Registra una función GameInputDeviceCallback a la que se llama cada vez que un dispositivo se conecta o se desconecta del sistema. También permite que se llame a la función cuando cambian las propiedades de un dispositivo.

Sintaxis

Parámetros

device   _In_opt_\ Tipo: IGameInputDevice* Limita la devolución de llamada registrada para que solo se desencadene para un dispositivo específico. inputKind   _In_\ Tipo: GameInputKind Limita la devolución de llamada registrada para que solo se desencadene para dispositivos que admitan al menos uno de los tipos de entrada especificados. statusFilter   _In_\ Tipo: GameInputDeviceStatus Limita la devolución de llamada registrada para que solo se desencadene para tipos específicos de cambios de estado del dispositivo. enumerationKind   _In_\ Tipo: GameInputEnumerationKind Determina si se enumerarán los dispositivos y si la función esperará a que se complete la enumeración. context   _In_opt_\ Tipo: void* Un objeto que proporciona información relevante para la función de devolución de llamada. Normalmente, el objeto que realiza la llamada. callbackFunc   _In_\ Tipo: GameInputDeviceCallback La devolución de llamada definida por el título que se registra para el evento de conexión o desconexión del dispositivo. callbackToken   _Result_zeroonfailure_\ Tipo: GameInputCallbackToken* Token que identifica la función de devolución de llamada registrada. Este token se usa para identificar la función registrada en caso de que necesite cancelar o anular el registro de la función de devolución de llamada.

Valor devuelto

Tipo: HRESULT Resultado de la función.

Comentarios

La función registrada mediante IGameInput::RegisterDeviceCallback puede usarse para reaccionar a los cambios de estado del dispositivo, como una conexión o desconexión. Los tipos de cambios de estado reconocibles se enumeran en GameInputDeviceStatus. El parámetro enumerationKind puede usarse para provocar una ráfaga inicial de devoluciones de llamada: una por cada dispositivo conectado al sistema. Esta enumeración inicial puede establecerse como enumeración asincrónica o sincrónica. Una enumeración sincrónica llamará a todas las devoluciones de llamada iniciales antes de que IGameInput::RegisterDeviceCallback devuelva el resultado. En el ejemplo de C++ siguiente se muestra cómo enumerar explícitamente los mandos y teclados conectados.
En el ejemplo de C++ siguiente se muestra cómo recibir una notificación cuando un dispositivo se conecta o se desconecta.

Requisitos

Información general de la API de entrada
IGameInput
IGameInput::UnregisterCallback
IGameInput::StopCallback

Historial de versiones

Última modificación el 28 de agosto de 2026