キーボード入力イベントを受信するアプリケーションのテストを自動化するために使用する予定のuinputデバイスを作成する小さなプログラムを正常にセットアップしました。
この非常に素晴らしい回答にあるように、両方の チュートリアルに従いました。
プログラムが呼び出して uinput デバイスを作成するとioctl(fd, UI_DEV_CREATE)
、新しいデバイスがファイル システムに表示されるので、テスト対象のアプリケーションはそれにアタッチしてイベントを待つことができます。ターゲット システムにはすでに/dev/input/event0
デバイスがあるため、新しいデバイスがパスを取得します/dev/input/event1
。既存のデバイスがあるデスクトップ システム用にプログラムをコンパイルして実行すると、/dev/input/event[0-15]
プログラムを実行すると新しいデバイスが取得され/dev/input/event16
ます。
プログラムが作成後に新しいデバイス名を報告するようにしたいと思います。それを取得する方法はありますか?