当发生异常时,调试器会给我以下消息:
我可以通过检查来选择忽略异常ignore this exception type。
然而,这样做会忽略所有未来项目中的异常,这比无用更糟糕,因为我不想忽略每个项目中的异常;我只想在这次运行中忽略它们。
使用 ToolsAPI,有没有办法:
A - 仅忽略此运行的异常,或
B - 仅忽略此项目的异常,或
C - 重新启动 Delphi 时恢复忽略异常设置?
如果我能做到 A、B 或 C,我的问题就解决了。
我知道ignore exception数据存储在:
HKEY_CURRENT_USER\Software\Embarcadero\BDS\17.0\Debugging\Embarcadero Debuggers\Language Exception Classes
我的首选选项是使用 ToolsAPI 来修复消息框并添加一个ignore this exception for this session only复选框。
但是,如果那不可用,我可以在注册表中搞乱。
如果我确实回退到注册表,我想强制 Delphi 重新加载设置,这样我就不必重新启动 IDE。
作为记录,我正在使用西雅图,但我更希望从 2007 年开始使用它。
我检查了 ToolsAPI,但IOTAFileFilterWithCheckEncode看起来不相关,我认为IOTABreakpoint80仅适用于用户设置的断点。
我还没有源代码,因为我不确定使用 ToolsAPI 是否可以实现我想要的,如果不是,我将回退到使用记录上述注册表项的外部应用程序,启动 Delphi 并恢复注册表项。我希望有一种更清洁的方法。

