【问题标题】:Why does the break point not disappear when removed为什么断点去掉后不消失
【发布时间】:2015-06-30 01:08:24
【问题描述】:

使用 D2007。有时断点不会消失。我可以将它们从设备中移除并运行程序;并且调试器将中断,因为 断点 已自行复活。

如果我删除断点并关闭并重新打开文件,它就会回来。

几年前我确实发现了问题所在。但我已经想不起来了。有人知道吗?

【问题讨论】:

  • 你安装了哪些 IDE 插件?
  • @JerryDodge MMX、GExperts 和 DDevExtensions。但我一直拥有它们。 IDE 或插件没有任何变化。
  • 我不熟悉 D2007 或任何这些附加组件,但我在使用更高版本的 Delphi 时遇到了问题,这些问题已通过禁用或卸载其中一个来解决。例如,一个 IDE 问题是通过卸载 AQTime 来解决的,因为我从未使用它,另一个问题是通过不使用 DXE8 启动 Castalia 来解决的。
  • 从dsk文件中删除

标签: delphi debugging breakpoints delphi-2007


【解决方案1】:

我现在记得上次我从断点视图中删除了它们。我决定按照大卫的建议尝试删除文件。

我换了一个不同的项目组,从原项目组的dsk文件中删除了断点部分,然后切换回来。但是断点又回来了。所以我退出了 IDE 并删除了该部分并重新启动 - 现在它们消失了。

我很好奇为什么会这样,所以我查看了 dsk 文件的备份。我发现断点指向 C 驱动器 上的文件,而这正是源代码所在的位置。几年前,当我使用 Windows 7 时,我将它们转移到 E 盘

看起来,当它应用它们时,它会忽略驱动器。但是当您尝试删除它们时,它会尝试匹配整个路径。

【讨论】:

  • Delphi 不仅忽略驱动器,而且忽略目录。因此,如果您有两个具有相同名称的单元(例如,如果您有两个创建“Main.PAS”的“生成”项目)同时打开 Delphi 会感到困惑并显示不存在的断点并在您的点处中断不要指望。有时,当您单击明显的断点时,会出现一个绿色勾号(表示已成功添加断点,即使它显然已经存在),再次单击会使它消失。这在 D2009 上都是正确的。我不确定它是否已针对 XE 修复,但我对此表示怀疑。
猜你喜欢
  • 2015-09-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-19
  • 1970-01-01
  • 1970-01-01
  • 2012-02-01
  • 2020-09-14
相关资源
最近更新 更多