调试多个exe程序

时间:2010-06-30 13:44:48

标签: debugging project

我有一个项目,我需要修复这个程序,它有非常不确定的崩溃倾向。这个软件执行大量的计算和数据库调用,并且可能具有很高的负载,意味着很多客户端。

这是一个非常关键的组件,没有它就没有任何作用。它需要执行并且能够在没有用户交互的情况下长时间运行。

它实际上是一个带有COM的本机C ++ / ATL项目,用于两个可执行文件之间的通信。

我现在花了很多时间实际研究代码并寻找明显的代码缺陷,例如没有锁定共享变量(显而易见的那些),异常处理程序除了'之外什么也不做返回false',即使这可能是一个关键的例外。

但是我想知道是否有人在解决这样的项目方面有一些提示,许多人实际上已经尝试解决问题并且失败了,现在你已经接受了挑战并且不想失败。

我准备远远解决这个问题,但是我需要一些关于如何以良好方式解决这个问题的指导?

我的想法是首先建立一个测试环境,并希望尽可能多地收集有关崩溃的信息,然后通过记录,堆栈跟踪等找出崩溃点。这可能是也可能不是调试这样一个项目的好方法。

赞赏任何意见?

2 个答案:

答案 0 :(得分:3)

这可能是显而易见的,但我的错误修正任务的路线图是:

  1. 在崩溃源(用户,开发人员等)上收集尽可能多的信息。
  2. 检查文档和依赖项。
  3. 检查源代码。
  4. 构建一个独立的测试环境并尝试重现。
  5. 如果您仍然无法找到错误的来源,请尝试清理源代码并添加更详细的日志记录系统。

    此致

答案 1 :(得分:0)

记录,记录,记录,记录。