2009-09-08 15 views
10

私のアプリケーションは、仮想ジョイスティックとして動作する必要があります(マウスで四角形をドラッグしてアナログジョイスティックの出力に変換すると想像してください)ドライバがその入力を受け取る場所。エミュレートされた入力デバイス用のWindowsドライバの作成

私はXP、Vista、Win7をサポートする必要があります。

おそらく、ドライバを書くことなく行うことができます。 SendKey()を使ってキーストロークを送信しようとしましたが、これは動作するようですが、アナログジョイスティックをエミュレートする方法はわかりません。

私はVDKをダウンロードしましたが、件名にあるすべてのものを読んだことがありますが、まだ理解していないことがたくさんあります。正しい方向に私を向けることができますか?

  1. カーネルモードまたはユーザーモードのドライバをビルドする必要がありますか?
  2. 私のドライバは、ネットワーク上のアプリケーション用のサーバーとして機能できますか?
  3. これについて私に役立つ良いチュートリアル/書籍/サンプルをご存知ですか?

おかげ

答えて

-1

それが唯一のネットワーク上にある場合は、おそらく簡単なソケットプログラミングは十分なはずです。

5

まず、コンピュータ(またはネットワーク)と制御されているジョイスティックデバイスとの間に何らかのインターフェースが必要です。

アナログジョイスティックを制御するためのカスタムハードウェアの作成が必要な場合(たとえば、PCのジョイスティックタイプのものだけでなく、空気圧や油圧などを制御する場合など)、ネットワークアプリケーションを許可するドライバが必要になりますジョイスティックを動かす(ロボットアームなど)。

物理的なジョイスティックを式から削除することができれば、ジョイスティックのプラグイン(ジョイスティック/シリアルポート?)の入力をエミュレートするソフトウェアを書くことも、完全にエミュレートすることもできますシンプルなドライバーがこれを行うことができます)。ジョイスティックがRS232のような標準的な通信インターフェースを使用していれば、ドライバを書くことなく完全に行うことができます。なぜなら、ライブラリはすべてそれを処理し、通信しようとしているものと区別できない仮想COMポートを設定できるからです。

あなたは、現時点では、ドライバの開発に買うことができる最高の本はDeveloping Drivers with the Windows Driver Foundation

Rootkits: Subverting the Windows Kernelは別の偉大な本ですが、新しいWDFのものの多くをカバーしていません。それはもっとセキュリティの焦点を持っていますが、本当にアクセス可能な方法でそれを分割し、完全にspoonfedの例でデバイスドライバのいくつかの素晴らしい章があります。

関連する問題