【问题标题】:Application crash at customer machine客户机器上的应用程序崩溃
【发布时间】:2011-07-04 14:38:11
【问题描述】:

我们的 DCOM 服务器在客户机器上崩溃。如果我启用 Page Heap、Put pdb 文件或附加 AD Plus,应用程序不会崩溃。它不会在我们的任何机器上崩溃。

我在客户机器上使用 Windows 的即时功能生成了 NTSD 故障转储。但不同时间的坠机地点不同。

我应该使用什么技术来确定崩溃的原因?

【问题讨论】:

  • 也许你可以试着让问题不那么简洁。我相信你知道“Put pdb files”的意思,但它肯定不是我的行话
  • 你的意思是调试构建工作吗?可能和优化、#ifdef _DEBUG 代码等有关
  • @Sehe:我们采用了发布版本。 pdb 文件与发布版本相关
  • 你能发布一些示例堆栈吗?它会在处理内存/堆的函数中崩溃吗?
  • 您不会是第一个通过永久保留调试工具来解决无法诊断的堆损坏问题的人。如果您无法从 minidump 中诊断它并且无法使用适当的调试工具出现故障,那么除了彻底的代码审查之外几乎没有什么可做的了。

标签: c++ crash windbg


【解决方案1】:

这听起来像是内存损坏。通常,此时堆栈跟踪不可靠。首先要做的是查看堆栈段。最好的方法是转储原始堆栈而不是堆栈跟踪,看看是否可以手动重建堆栈。此外,当内存被覆盖时,请检查您是否在覆盖的数据中看到数据模式。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-11-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-26
    相关资源
    最近更新 更多