trw2000 vb符號除錯初步 (1千字)

看雪資料發表於2015-11-15

trw2000 vb符號除錯初步

    我們都知道softice支援符號除錯。而很少了解TRW2000也具有自動載入sym符號檔案供除錯的作用。
    為了對Visual Basic 6進行符號除錯,首先需要得到msvbvm60.dll及相對應的msvbvm60.dbg除錯檔案,這些可以從microsoft網站的VB6 SP5升級包中得到。
    在你安裝softice的目錄\Util16下,有2個程式:Dbg2map及msym.exe
dos視窗下命令
c:\..\softice\util16> dbg2map.exe msvbvm60.dbg  生成msvbvm60.map檔案
c:\..\softice\util16> msym.exe    msvbvm60.map  生成msvbvm60.sym檔案

    將msvbvm60.sym檔案放在trw2000.exe所在目錄下,執行trw時會自動載入sym檔案。
由此我們可以得到msvbvm50.sym、oleaut32.sym檔案並一併載入。當多個sym被載入後可以在trw2000中下命令
sym
來選擇當前使用的sym檔案。

    所以,我們將可以直接用exdec反編譯得到的vb pcode助記符設斷攔截。也可以在用trw進行跟蹤時獲得更多的程式資訊。

    注意:
    1. 個人使用後體會,trw2000 1.23版本中,利用vb pcode助記符設斷經常會出錯,表現在trw不能將助記符正確轉換為中斷地址。

    2. 如此也解決一個問題:exdec反編譯後生成的pcode助記符名稱是誰定義的?
      答案是:微軟公司

相關文章