我有一个程序在关机期间遇到了一些麻烦,引发了我无法追溯到其来源的异常.它似乎与时间相关且不确定.这是在所有共享资源被释放后发生的,并且由于它已经关闭,因此内存泄漏不是问题,所以这让我想知道是否有任何方法只是告诉程序在释放共享资源后立即和静默终止,而不是继续关闭序列并给出一个异常消息框.
有谁知道这是怎么做到的吗?
有没有办法在不引发EAbort异常的情况下中止方法的执行?
这是一个问题:
....
try
i := strtoint(Edit1.Text);
if not (i=10) then
begin
showmessage('Value for I must be 10 !');
sysutils.abort;
end;
except
showmessage('Wrong Value for i !');
end;
showmessage('Execution continue ...');
...
Run Code Online (Sandbox Code Playgroud)
在这个示例中,如果i的值为5,程序执行将不会中止...它将显示消息"我必须为10的值!",然后消息"i的值错误!" (因为引发了EAbort异常)然后消息"Execution continue ...".我知道如何解决这种情况,但我需要没有EAbort异常的sysutils.abort的通用解决方案.