gpt4 book ai didi

delphi - 简单朴素的delphi错误处理

转载 作者:行者123 更新时间:2023-12-02 09:20:09 26 4
gpt4 key购买 nike

以下代码片段无法按我的预期工作,我认为它将显示我希望它在没有调试器异常通知的情况下显示的消息“处理引发异常类 EAccessViolation 并显示消息“模块 XXXX 中地址 0045D9E7 处的访问冲突” ',但是程序运行得跟我想象的相反。这是为什么呢?

procedure TForm1.btn1Click(Sender: TObject);
begin
try
(WebBrowser1.Document as IHTMLDOCUMENT2).execCommand('Refresh',false,0);
except
ShowMessage('caught!');
end;
end;

最佳答案

除非调试器选项的“语言异常”中的“通知语言异常”未选中,或者“EAccessViolation”是同一对话框中要忽略的异常类型之一,否则调试器将停止程序并在出现异常时立即显示异常引发语言异常。

请注意,根据documentation ,如果选中“通知语言异常”复选框,则调试器将忽略“要忽略的异常类型”中的列表。然而,并非每个 Delphi 版本都是如此。根据我的测试,D2007 符合忽略列表(即使该框未选中)。使用 XE2,我无法以任何方式使其忽略 EAccessViolation。

关于delphi - 简单朴素的delphi错误处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19943804/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com