私はインプロセスで動作するアドインを書いています。私は確実にそのプロセスで既に読み込まれているDLLのメモリアドレスを発見することができます。オフセットのメモリは、 "MZ" DOSヘッダーと "PE"ヘッダーを明確に示しています。後で、エクスポートされた関数などの名前が表示されます。これは、ロードされたDLLのように歩み寄り、話します。私はロードされたDLLの開始アドレスを持っていますが、そのエクスポートをどのように発見して呼び出すことができますか?
ここで、DLLが何であるか、そしてもっと興味深いことに、私ができることをもっと発見したいと思いますと一緒に実行します。
これまでPEユーティリティを使用していましたが、ファイルベースのDLLを使用していました。 16進エディタでプロセスを検査する以外に、インメモリDLLのエクスポートされた関数を一覧表示するにはどうすればよいですか?現在ロードされているファイルベースのDLLを検出する方法はありますか? (私は、DLLがロードされたときに起こると思われるリンクにあまり慣れていません)
エクスポートされた関数の名前を持っているのであれば、それらの関数を呼び出そうとしても問題ではありません引数と戻り値あるいは、実行可能なさらに強力なリバースエンジニアリングがありますか?
DLLの開始アドレスと関数名が与えられたら、C#でどのように呼び出しを行うのですか?