0

フックは、他のプロセスからデータを取得するために実行されるプロセスです (詳細)。ネットワークにアクセスするためのアプリケーションを使用してメソッドまたは関数を取得したかったのですが、これらのメソッドは通常、、、、およびWSAConnect()[アプリケーションにアクセスする必要があるものです] です。WSASendTo()bind()connect()sendto()

テストを開始し、ランタイム [Runtime.getRuntime ()] を作成しました。exec (...)] 可能なすべてのメソッド [addShutdownHook (...);] を使用して、ProcessBuilder [new ProcessBuilder (...);] と有名な BufferedReader [new BufferedReader (new InputStreamReader (proceso .getInputStream ()));] しかし、それを行う方法が見つかりませんでした。

私の主な要求は、ネットワーク経由で通信するプログラムを生成する WSAConnect ()、WSASendTo ()、bind ()、connect ()、および sendto () 関数を取得 (インターセプト) する方法です。[Java の使用 - フック]

編集: ¿ライブラリ ws2_32.dll をフックする方法[Windows OS これには必要な機能が含まれています]

4

1 に答える 1

0

これは Java の設計に反するものです。

しかしAspectJ、コンパイルされたクラスファイルを変更して、何らかのフックを許可するものを調べてみてください。

于 2012-11-23T02:18:27.230 に答える