2

別のプロセスで実行されているリモート アプリ ドメインにスレッドを挿入できるかどうか疑問に思っていました。

私の推測では、デバッグ インターフェイス (ICorDebug) を使用してこれを行うことができますが、他の方法があるかどうか疑問に思っていました。

4

4 に答える 4

1

最近、これを行うために Mono が提供する新しい機能が発表されました。アセンブリ インジェクションに関するこの投稿を参照してください。

于 2008-10-08T22:08:05.913 に答える
0

SetThreadContextを使用して、ターゲット プロセスの EIP を変更する別の方法があります。ただし、C# でそれを行う方法がわかりません。

于 2008-10-09T20:18:33.793 に答える
0

これは、 snoopにサンプル コードがあります。フックを設定し、マネージ C++ を使用して appdomain にアセンブリをロードするように指示します。本当に印象的です...

于 2008-11-13T07:36:24.620 に答える
0

Mike Stall は、CreateRemoteThread を使用してマネージド アプリにリモート スレッドを挿入する方法に関する興味深いサンプルを提供しています。

この回答はまだ不完全です。リモート アプリケーション ドメインで新しいコードを実行したいからです。ライブラリをロードする新しいスレッドを1つ作成し、新しいライブラリ内の場所を呼び出して作業を行う別のスレッドを作成してみることができると思います。

于 2008-10-09T20:14:17.517 に答える