私は C# 2010 で小さなプログラムを作成しました。これは、次の部分を使用してデバイスの配列を作成することにより、異なるキーボードからの入力を分割できます。
-- このコードは、統合されていないキーボードでも問題なく機能します --
InputDevice id;
NumberOfKeyboards = id.EnumerateDevices();
id = new InputDevice( Handle );
id.KeyPressed += new InputDevice.DeviceEventHandler( m_KeyPressed );
private void m_KeyPressed( object sender, InputDevice.KeyControlEventArgs e ) {
lbDescription.Text = e.Keyboard.Name;
// e.Keyboard.* has many useful strings, none work for me anymore.
}
これに非常に満足して、私は Unifying レシーバーを使用する 4 つの Logitech K230 キーボードを使い果たし、購入しました。悲しいことに、すべてのキーボード データが多重化され、私のコードでは 1 つのキーボードとして表示されます。
入力がどの「統合」キーボードから来ているかを特定するにはどうすればよいですか? 理想的には C# ですが、解決策があれば他の言語も検討したいと思います。