2011-10-26 7 views
1

私のc#アプリケーションでは、ユーザーが別のサードパーティアプリケーションの2つのボタンのいずれかをクリックしたときに検出する必要があります。別のアプリケーションのイベントを取得する

私はWndProcを試みたが、イベントは自分のアプリケーションでは発生しません何らかの理由でアプリケーションのハンドルが、MainWindowHandle 0を返します。

を取得することができています。

このアプリケーションのボタンクリックイベントをどのように取得/傍受できますか?

+0

このサードパーティ製のアプリケーションは、接続できるイベントを公開していますか?そのサードパーティで使用されているボタンには公開されていますか?または少なくともatleast保護? – Zenwalker

+0

サードパーティを少し修正することはできますか? –

+0

@ user390480:サードパーティのアプリケーションはどの言語とフレームワークで書かれていますか? –

答えて

2

グローバルシステムフックにより、アプリケーションは他のアプリケーション用のWindowsメッセージを傍受することができます。これは、C#で実装することは常に困難でした。 Codeplexのこのプロジェクトは、フックするアプリケーションのメッセージキューにメッセージをポストするC++でDLLラッパーを作成することにより、グローバルシステムフックを実装しようとします。簡単に言えば、管理されたコードから任意のタイプのグローバルなWindowsフックを実装することができます:http://www.codeproject.com/KB/system/WilsonSystemGlobalHooks.aspx

関連する問題