[Delphi] 2010-03-30 14:20 我来说两句  

Delphi 在运行时出现了一个异常,两天后终於解决了。

最近在改程序的主控台,改动的地方也不多,就是涉及的“包(Package)”比较多,编译的时候并没有出现什么问题。而且编译之后也可以单独执行(Execute),但问题在於,在Delphi的环境下,执行“运行F9”,不能进入调试环境,其后果是Delphi直接死机,或者是出现“External Exception C0000009”,一直找不到原因,也Google不到相关的资料。
今天,我想到了另外一个问题,会不会是“包”的问题?於是,我在主程序的“运行期Runtime”里,把所有的包都删除,只保留“vcl;rtl”,结果是:“可以调试”了,至此,我已经明白,肯定是某个包引起问题了,而Delphi却没有报告问题。
我把所需要的运行包,一个个的加入到“Runtime”时,加入最后一个包的时候,发现故障重现。判断是此包出问题之后,我重编译此包,再重新加入主程序的Runtime里,问题解决,可以进入调试环境了。