私は Microsoft Spy++ をいじっていて、開いているプロセスを見つけるだけでなく、各プロセスで実行されている個々のコンポーネントを見つけることができることに気付きました。たとえば、IP アドレス用のテキストボックスとポート用のテキストボックスがあるウィンドウを開くことができるこのアプリケーションがあります。Spy++ はこれらのコンポーネントを検出できます。Spy ++がそれらを検出できることを知っていれば、別のc#アプリケーションでそれらを見つけて、その内容を変更し、プログラムとやり取りすることはできますか? (ボタンでクリック イベントを発生させるなど)
1627 次
2 に答える
1
自動化要素/ピアは、アクセシビリティ フレームワークを使用して UI を制御する非侵入型メカニズムです。Windows の弱点の 1 つは、コード インジェクションに対する防御の欠如です。簡単に言えば:
特権ユーザーとして、 - 実行中のプロセス イメージを開いて変更することができます - 自分の DLL をロードさせます
- 自分のスレッド (プロセスからのコマンドをリッスンする可能性があります) を実行させます - メモリの任意のビットを読み取ることができます欲しいです。
管理されたプロセスでそれを行う方法については、回り道 ( http://research.microsoft.com/en-us/projects/detours/ ) を参照してください。残念ながら、Microsoft は実行時の注入機能を削除しました。
また、管理された世界で物事を行うためにhttp://msdn.microsoft.com/en-us/magazine/cc163617.aspxを見てください(Snoopのようなアプリはそれを利用しています)
于 2013-04-15T08:12:02.603 に答える