[在不安装Visual Studio的情况下获取Windows崩溃的堆栈跟踪信息? (C ++)

问题描述 投票:8回答:2

我有一个C ++应用程序,该应用程序在世界另一端的某人的计算机上崩溃。我无法模拟它或获得同一台计算机。这个人不是开发人员,所以我不能真正要求他安装Visual Studio或其他东西。我有很深的调试日志,但是它们没有显示任何可用的信息。

是否有工具可以在崩溃时生成应用程序的堆栈跟踪?这样的东西在OSX内部可用,但Windows似乎没有。

c++ visual-studio debugging stack-trace crash-reports
2个回答
4
投票

您可以使用procdump。可以将其设置为调试器,以自动为崩溃的进程创建转储。

Procdump是Sysinternal工具的一部分,可以在以下位置找到:

http://technet.microsoft.com/en-us/sysinternals/dd996900.aspx

相关开关:

为挂起的应用程序创建转储:

为其中一个名为“ hang.exe”的进程编写一个小型转储。Windows超过5秒钟没有响应:

C:\>procdump -h hang.exe hungwindow.dmp

为崩溃的应用程序自动创建转储:

注册为即时(AeDebug)调试器。使完全转储c:\ dumps。

C:\>procdump -ma -i c:\dumps

为pid创建转储:

 C:\>procdump <PID>

您可以使用windbg读取转储文件:Getting started with dump file analysis


1
投票

使用Google的lib(使minidump用于msvc进行调试)。CrashRpt

© www.soinside.com 2019 - 2024. All rights reserved.