软件会自动退出,如何查看在什么地方出错而导致会自动退出。

noall 2013-07-01 09:39:42
有什么方法可以检测或知道在什么地方出错了,而导致软件自动会退出?

是这样:

软件打开,运行几分钟有可能会退出,也有可能运行了几个小时都不会出问题,

操作一样的东西,一样的步骤。但结果,软件有时就给你退出,而没有任何提示,而且任务栏里也看不到线程了。
...全文
453 点赞 收藏 17
写回复
17 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
reverzeng 2013-08-31
引用 11 楼 ksrsoft 的回复:
eurekaLog非常不错,推荐安装使用,可以分析日志
看到这个后抓住了一个问题,推荐
回复
noall 2013-08-29
eurekaLog 哪里下载。盒子上没找到。
回复
缘中人 2013-07-03
eurekaLog非常不错,推荐安装使用,可以分析日志
回复
bbc9527 2013-07-03
引用 楼主 noall 的回复:
有什么方法可以检测或知道在什么地方出错了,而导致软件自动会退出? 是这样: 软件打开,运行几分钟有可能会退出,也有可能运行了几个小时都不会出问题, 操作一样的东西,一样的步骤。但结果,软件有时就给你退出,而没有任何提示,而且任务栏里也看不到线程了。
1、动态调试工具 OD打开 在 查找所有 调用的API 在退出进程的API上 下断。然后执行,接着等待退出,一旦程序退出,就会在 API上被拦截,查看 函数的参数 和寄存器堆栈 等信息 ,最好截图保留 。 以上的做法好处是 找到问题的原因很直接 而且准确。 缺点是麻烦 而且要熟悉 调试技巧。 2、程序代码中关键部分插入写日志的代码 或者通过一个输出 组件 输出调试信息。优点是简单,缺点是 定位不一定准确 。 3、通过一些软件检测程序运行状态比如(procexp xuetr) 。检测 重要的 部分,对比出错前后的不同。 4、通过windbg+vmware 在虚拟机中检测 软件的执行状态和各个部分的问题。 总之 出错 就要想想怎么调试 多用不同工具。 希望对你有帮助。
回复
linlingwei 2013-07-03
进行代码跟踪调试看看
回复
sololie 2013-07-03
引用 11 楼 ksrsoft 的回复:
eurekaLog非常不错,推荐安装使用,可以分析日志
可惜内存泄露检查不支持c++ builder
回复
sololie 2013-07-03
Eurkalog 7.x版现在好大,120多M,不过更酷了,自带的demo和help更详尽了 盒子ftp上有7.x版带汉化文件,6.x的也有
回复
sololie 2013-07-03
6楼说的对,用Eurkalog,轻松省事
回复
清风皎月 2013-07-01
用进程把你主要运行的东西写进去,先把你主要功能在外面调试好了来。这样可以多用几个进程来做,分开功能到小进程。我是这样解决的。多半是对数据库的操作上的问题。
回复
hongss 2013-07-01
直接调试状态运行,如果出错会给出错误提示。 这种情况大部分应该是内存泄漏引起的吧~~~~
回复
楼上所述是最实用的方案。
回复
feiba7288 2013-07-01
在代码里面每执行一步写一次日志,对一些主要处理代码加异常捕捉,等下次出现问题时,有日志有助于分析问题所在。
回复
haitao 2013-07-01
多加日志输出
回复
人鱼传说 2013-07-01
建议楼主安装一个Eurkalog软件(内存泄漏也能捕捉到),可以自动记录出错的详细位置和原因,虽然每执行一步添加一个日志技术上可行,但可操作性不强!
回复
相关推荐
发帖
Delphi
创建于2007-08-02

4925

社区成员

Delphi 开发及应用
申请成为版主
帖子事件
创建了帖子
2013-07-01 09:39
社区公告
暂无公告