如何将USB设备输入访问到WPF应用程序

时间:2016-08-27 20:46:24

标签: c# wpf windows usb

我构建一个WPF应用程序,我知道如何检测单个按键,但我也想对USB设备,特别是Windows Media Center遥控器进行相同操作。我有遥控器和USB红外接收器。

我有点不确定如何做到这一点,但我尝试了一些事情,所有这些都没有奏效。对于键盘输入,我有以下代码。

public MainWindow()
{
    //Other code
    this.KeyDown += new KeyEventHandler(OnButtonKeyDown);
}

private void OnButtonKeyDown(object sender, KeyEventArgs e)
{
    var keypressed = e.Key.ToString();

    //Do something based on the value of keypress
}

哪个有效,所以我想我可以用USB设备输入做类似的事情。

Public MainWindow()
{
    //Other code
    var inputDown = new InputEventHandler(OnInputDown);
}

private void OnInputDown(object sender, InputEventArgs e)
{
    var inputpressed = e.RoutedEvent.ToString();
}

但这并没有奏效,输入事件从未触发过。我知道我可能需要在应用程序中注册USB设备才能访问它,但我不确定如何执行此操作。有人能指出我正确的方向吗?

我确实设法修改了一个脚本来打印出连接到计算机的所有USB设备,这些是我收到的有关USB遥控接收器的详细信息。

  • 设备ID:USB \ VID_0471& PID_0815 \ PH00QO9E
  • PNP设备ID:USB \ VID_0471& PID_0815 \ PH00QO9E
  • 描述:eHome红外接收器(USBCIR)

0 个答案:

没有答案