一个很简单的问题?关于异常的处理(50分)

  • 主题发起人 主题发起人 笑天宇
  • 开始时间 开始时间

笑天宇

Unregistered / Unconfirmed
GUEST, unregistred user!
一个很简单的问题?关于异常的处理
程序段如下:
var
i,j,k:real;
begin
i:=2.0;
j:=0.0;
try
k:=i/j;
edit1.text:=floattostr(k);
except
showmessage('除零错误');
exit;
end;
end;
单步执行,当程序执行到k:=i/j;时会调用delphi自带的
异常处理,然后就停在k:=i/j;当你再按f9时,才执行
showmessage('除零错误');
我现在的目的是要让程序屏蔽到delphi自带的异常处理,而只执行
我自己写的异常处理,怎么办?
 
调试的时候就会这样,如果直接执行。EXE文件就不会了!
 
不是啊,直接执行也不行
 
except
on e: exception do
begin
xxxxx;
exit;
end
end;
 
兄台,好象也不行啊
你试了吗?TMD,怎么这么慢?
 
我按你写的代码,就是屏蔽了delphi的异常.
 
不会吧!老兄!
我在D5中调试通过。
直接运行EXE没有出现异常处理????
 
直接去运行exe应该是没问题的
不会出现delphi捕捉的异常,因为你已经把delphi关了啊
 
在DELPHI5中生成EXE文件后,就可以了
 
我运行exe文件,完全符合你的要求。
 
在Tools >> Debugger Options... >>Language Exceptions 页中
Stop On Delphi Exceptions 选项去掉.
 
试一试
var
i,j,k:real;
begin
i:=2.0;
j:=0.0;
try
begin
k:=i/j;
edit1.text:=floattostr(k);
end.
except
begin
showmessage('除零错误');
exit;
end;
end;
end;
 
你的程序完全没问题,如果实在有问题,应该不是这里的问题!
另::ccweifen的方法(在Tools >> Debugger Options... >>Language Exceptions 页中
Stop On Delphi Exceptions 选项去掉)用途是屏蔽在Delphi调试时的异常中断。对直接
执行exe文件则一点影响都没有!!!

 
多人接受答案了。
 
后退
顶部