.NET系でアンマネージドなdllを使う時って、
[DllImport(DLLのパス, EntryPoint = "エントリーポイント")]
って、書きますよね。
でも、エントリーポイントが素直に関数名だけじゃなく、後ろに適当な文字列が付加されている場合ってありませんか?
そんなDLLのエントリーポイントを調べるのが「dumpbin」コマンドです。
使うためには、Visual Studioのツールが入っている必要がありますが、Express版には付いてきません。
Proなどの製品版についている機能です。
私の場合は、VS2008のProがあるので、これで調べています。
コマンドの使い方ですが、
まず、スタートメニューから「Visual Studio 2008」 → 「Visual Studio Tools」 → 「Visual Studio 2008 コマンド プロンプト」を開きます。
コマンドプロンプトが起動するので、以下のようにコマンドを打ちます。
dumpbin /exports 調べたいdllのパス
これで、dllの中の関数のエントリーポイント一覧が表示されます。
あとは、DllImport時にここで得られたエントリーポイントを記述するだけです。
コメント