2009-09-04 40 views
0

あるコンピュータから別のコンピュータにキープレスを送信したいと考えています。私は自分のヘッドセットに使用する1つのシステム上に音声アプリケーションを持っており、他のシステムは私のメインシステムです。音声アプリケーションはプッシュツートーク(PTT)システムを使用します。ネットワーク経由でkeypressesを送信する

だから私がやりたいものを押すと、私のメインシステム上のキーで、それは私のセカンダリシステムにネットワーク経由で送信しています。この段階で私が知っているのは、ネットワーク上でキーを取得する方法です。私のメインシステムでキープレスを実際に検出し、セカンダリシステムでプレスをエミュレートすることの詳細は私の問題です。

私が(押されたときに)キャプチャして、セカンダリシステムに送信したいキーは、正しいコントロールキーです。 I キーボードフックを追加することをお勧めします。

私のメインシステム上のアプリケーションで正しく制御することができ、このアプリケーションを選択して送信するようにするにはどうすればよいですか?セカンダリシステムが鍵を受け取ると、特定のアプリケーションを探すのではなく、システム全体にどのように送信するのですか?私は管理されていないC++で低レベルのWin32呼び出しを使用しても問題ありません。これを動作させる方法を知りたいだけです。

ありがとうございます。

答えて

0

私は答えを見つけました:私は小さなキーボードフックを書いてPTTプレスをピックアップし、それをネットワーク経由でセカンダリシステムに送りました。セカンダリシステムはこのキーを押して、SendInput関数を使用してキーをシステム入力キューに注入します。私はTeamspeakでそれをテストしたところ、がきれいにで動作します。

+0

興味のある方は、実際のソースコード(Linux用のコードも同様です)はここにあります:http://code.google.com/p/netkeys –

1

あなた自身のカスタムソリューションにすでに途中で入っているようですが、代わりに、オープンソースのキーボードとマウスエクステンダSynergyをチェックしてみてください。

+0

私は現在Synergyを使用していますが、私が知っている限り、「フォーカス」(つまり、他のシステム)のないスクリーンにキーシステムを送信する方法はありません。を探しています。私はそれを修正することができたと思います。 +1に関係なく。 –

+0

ええ、あなたが正しいです、ここで私は考慮しなかった微妙です。あなたのメインシステムでは、右のctrlキーを押さえてキーシステムをメインシステムに渡してから戻ってきたときに、シナジーに切り替えることができますか? –

+0

かなり複雑に聞こえる...私は、キーボードフックとSendInput関数に関連して、Googleで少し調べたところで何かをしていると思う。http://msdn.microsoft.com/en-us/library/ms646310 (VS.85).aspx)。とにかくありがとう! –

関連する問題