我正在开发与C#winforms的应用程序。
我们的应用程序将被安装在win8的表面(触摸屏设备)。
我们要检查一个键盘是否通过USB连接,然后我们的应用程序将不会显示软键盘,否则会显示。
许多方法可用来检查WinRT,但没有用于Winforms C#。
请让我知道如果我的问题不清楚。
提前致谢。
我只是写了这个,并在W8上测试:
ManagementObjectSearcher searcher = new ManagementObjectSearcher("Select Name from Win32_Keyboard"); foreach(ManagementObject keyboard in searcher.Get()) { if (!keyboard.GetPropertyValue("Name").Equals("")) { Console.WriteLine("KB Name: {0}", keyboard.GetPropertyValue("Name")); } }
我也连接了第二个键盘,可以看到它检测到。 当我拔下一个我得到一个条目,当拔掉两个我什么也得不到。
我在这里也找到了一些例子: 例1和例2
希望这可以帮助。