- 締切済み
実行ファイルからdllを呼び出す際の情報について
実行ファイル(exe)とdllの各バイナリだけあるとします。 exeがdllを呼び出す際の関数名とパラメータの内容を、外部ツール等で 簡単に参照することはできますでしょうか? 何かしら方法があるなら教えていただけると助かります。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
noname#82346
回答No.3
実行時の API コールの情報が知りたいのであれば汎用のデバッガでブレイクポイントを仕掛けるのが一番簡単です。VC++ でもいいし、windbg みたいな SDK 付属のものでも、とにかくネイティブコードがデバッグできるものなら何でもいいです。 あとは API コールの情報をスパイ/ログするツールが世の中にはあります。ただし、使い方がわりと面倒だったりします。最近のツール事情には詳しくないので具体的な名前は知りませんが、win32 api spy hook とかそんなワードで検索かければ何かしら見つかるでしょう。
noname#82346
回答No.2
VC++ に付属の dumpbin というコンソールアプリで EXE, DLL がインポート/エクスポートしている関数名をダンプできます。 ただし、通常はパラメータの内容を表す情報は関数名に含まれていません。 関数の呼び出し規約によってはパラメータの情報が含まれている場合もありますが、その場合は undname というコンソールアプリで修飾名を変換して可読な文字列に替える必要があります。 このようにして関数名とパラメータ情報が分かったとしても、それを使ってどうこうするのはちと難しいですが。
- Gab_km
- ベストアンサー率40% (20/50)
回答No.1
全ての場合に適用できるわけではありませんが、.NET用のAPIビューアが紹介されています。(参考URL)
補足
ご回答ありがとうございます。 説明不足でしたが、exeがdllの関数を使ったタイミングで その関数名とパラメータの「値」が知りたいです。