代码之家  ›  专栏  ›  技术社区  ›  Serhii Kheilyk

是否可以从DCU中剥离调试信息?

  •  0
  • Serhii Kheilyk  · 技术社区  · 8 年前

    我用的是免费的 NexusDB from GetIt

    但是,这些DCU中有调试信息,这会严重妨碍调试,即当我尝试调试时 Step Into (F7) nxdb.pas ,然后,因为我没有这样的文件,所以进入CPU视图时只使用行号反汇编(参见底部的示例)。

    Trace to Next Source Line (Shift+F7)

    NexusDB库文件夹只包含一个版本的.DCUs,没有“Release”版本

    所以我来问这个问题-有没有办法从.DCUs中删除调试信息?

    仅带行号的CPU视图示例:

    TnxDataset.Notification:
    007930EC 55               push ebp
    ...
    007930F7 8945FC           mov [ebp-$04],eax
    <unknown file>.10682: 
    007930FA 8BCB             mov ecx,ebx
    ...
    00793101 E8F6F9D3FF       call TComponent.Notification
    <unknown file>.10683: 
    00793106 8B45FC           mov eax,[ebp-$04]
    
    1 回复  |  直到 8 年前
        1
  •  1
  •   NexusDB Expert    8 年前

    我不知道有什么实用程序能帮你做到这一点。最好的做法可能是在事件处理程序等中主动设置断点。我怀疑IDE请求源代码的最常见原因是发生异常时;然后继续运行以查看异常。

    推荐文章