2011-06-25 4 views
0

私のC#アプリケーションは、別のプロセスからクリック位置を受け取る必要があるため、私は自分のアプリケーションに表示する必要があります。しかし、私はそれをどのように実装するのか分かりません。C#で他のプロセスからクリック位置を受け取る方法は?

誰かがこれを行う方法を理解するのに役立つでしょうか?

ありがとうございました

+0

あなたの質問を編集してください。うまくいけばうまく受け取ります。あなたは何をしたいですか、コンソール、wpfまたはwinforms! – gideon

+1

「別のプロセス」とは何ですか? – Rev

+0

申し訳ありません、私はWPFアプリケーションで動作しますが、私は誰かが他のアプリで知っていると思います。 もう1つのプロセスはプロセスをアクティブにすることですが、ユーザーはプロセスを選択してポジションを受け取ることができます。 – Jirayu

答えて

2

あなたが必要とするものは「フック」と呼ばれています。 Windowsでは、キーボードイベントとマウスイベントの両方をフックできます。基本的に、ウィンドウは、マウスの適切な動きとクリック(およびタイプされたキー)をフォーカスのあるアプリケーションに注入することによって機能します。

フックを使用すると、アプリに関連するイベントだけでなく、すべてのイベントが表示されます。あなたがフックを確立したら、あなたはその情報であなたが望むことをすることができます。

ここではWindows OSを使用していますが、ここで間違っているとハンドルがリークする可能性があります。また、ウィンドウが悪い状態になることもあります。

C#でこれを行う方法について説明しているMS Technetの偉大なチュートリアルhereがあります。

関連する問題