问题描述
我有一个C ++应用程序,该应用程序在世界另一端的某人的计算机上崩溃.我无法模拟它或获得同一台计算机.这个人不是开发人员,所以我不能真正要求他安装Visual Studio或其他东西.我有很深的调试日志,但是它们没有显示任何可用的信息.
I have an C++ application, that crashes on a computer of some person on the other end of the world. There's no way for me to simulate it or get the same computer. The person is no developer, so I cannot really ask him to install Visual Studio or something. I have pretty deep debug logs, but they didn't reveal anything usable.
是否有工具可以在崩溃时生成应用程序的堆栈跟踪?这样的东西在OSX内可用,但Windows似乎没有.
Is there a tool, that could generate the stack trace of the application at the moment of the crash? Such thing is available inside OSX, but seems that Windows doesn't have it.
推荐答案
您可以使用procdump.可以将其设置为调试器,以自动为崩溃的进程创建转储.
You can use procdump. It can be setup as a debugger to automatically create dumps for crashing processes.
Procdump是Sysinternal工具的一部分,可以在以下位置找到:
Procdump is part of Sysinternal tools and can be found at:
http://technet.microsoft.com/en-us/sysinternals/dd996900.aspx
相关开关:
为挂起的应用程序创建转储:
Create a dump for a hung application:
C:\>procdump -h hang.exe hungwindow.dmp
为崩溃的应用程序自动创建转储:
Automatically create dumps for crashing apps:
C:\>procdump -ma -i c:\dumps
为pid创建转储:
C:\>procdump <PID>
您可以使用windbg阅读转储文件:开始进行转储文件分析
You can read the dump files using windbg: Getting started with dump file analysis
这篇关于在没有安装Visual Studio的情况下获取Windows崩溃的堆栈跟踪信息? (C ++)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!