Board logo

Subject: 如何捕获出现异常时的错误行数? [Print This Page]

Author: stephenmax    Time: 2008-9-11 19:42     Subject: 如何捕获出现异常时的错误行数?

不知cnpack中有这样的工具函数吗?

就是出错时能记录下错在什么单元的那一行?

看了下网上帖子,要有map文件,这个好办,还要有崩溃时的出错地址,这个怎么获取?

PS,需要这种方法能脱离开发环境

[ 本帖最后由 stephenmax 于 2008-9-11 19:45 编辑 ]
Author: Passion    Time: 2008-9-11 20:00

Eurakelog能,是个比较好的解决方案然而是商业软件,需要花钱的。

JCL中也有类似功能。CnPack IDE 专家包的Debug版的异常捕获便是用的CnDebug结合JCL的机制,详情可参考cnpack组件包中的DebugSender例子以及CnDebug.pas的帮助文档,另外还需安装JCL包。
Author: stephenmax    Time: 2008-9-11 20:15

好的,,,我去试试。

看见好像madExcept,Eurakelog都能,但这些东西都貌似太复杂了

delphi还是太傻瓜,很多东西都不够好,c++里面好像有宏能直接获取当前行数。
Author: stephenmax    Time: 2008-9-11 20:15

inline也是最近两年才有。
以前想往exe里面添加个自定义共享段,唉,我的娘来,搜资料可搜苦了,而这个在c++里面就很简单搞定。。
Author: Passion    Time: 2008-9-12 08:37

Delphi确实没触及到这么底层的东西,像__LINE__, __FILE__等都没有。




Welcome to CnPack Forum (http://bbs.cnpack.org/) Powered by Discuz! 5.0.0