現状整理

問題点

MONALIBC.DLLへMONAPI.DLLリンクするときにエラーになる

うまくいくリンクとの違い

  • MONALIBC.DLLが2つ以上のImport tableを持っている事
  • MONALIBC.DLLの Import Address Table のエントリを取り出すと 0xA000xxxxを指している(通常はDLL内オフセットのはず)

疑ったこと

  • MONALIBC.DLLが壊れている?
    • PE Explorerで見ると、各Import Tableで名前取り出しが出来ているので、壊れていないと思われる
  • Import Address Tableのエントリが Relocate されてしまっている?
    • Relocate される範囲に含まれていなかったので違う。
  • ひとつ前のImport Tableのリンクで既に解決済である。
    • リンク済みであると仮定して該当部分のリンクをskipしたが実行時に未解決エラーになった

残された道

  • PE Explorer系のツールで、ソースを公開しているものから読み取る
  • 仕様書を見てみる←カフェに持っていくのを忘れた