我找到了多种创建转储文件的方法,例如使用windows utitlity userdump和adplus.vbs以及其他一些方法。 我在任务管理器中找到的一个选项似乎是最容易和最简单的一个打开任务管理器+选择进程+右键单击+创建用户转储。使用taks manager创建的.dmp文件是否与使用win实用程序创建的文件不同?
让用户从任务管理器创建转储文件比让他运行实用程序容易得多。
答案 0 :(得分:5)
请记住,在64位操作系统上,任务管理器为WOW进程创建的转储将是64位转储。这可能会导致问题,尤其是在调试托管代码时。对于32位WOW进程,通常最好使用32位实用程序。
答案 1 :(得分:1)
不确定从任务管理器创建的minidump有什么区别但是如果你想要更多信息,那么最好的办法是以编程方式创建minidump并设置适当的标志(注意某些标志是OS依赖的)或使用Dr. Watson,您只需在转储文件中选中所需信息框。
您可以使用MiniDumpWriteDump
以编程方式创建转储:http://msdn.microsoft.com/en-us/library/windows/desktop/ms680360%28v=vs.85%29.aspx有关于此的SO文章:How to create minidump for my process when it crashes?
你也可以设置博士。当崩溃发生时,Watson会为您生成它们: http://kb.acronis.com/content/2191
任务管理器解决方案很好但是自动生成它们是更好的IMO并以编程方式生成它们可以让您更好地控制并转储特定于您的应用程序的其他信息。
答案 2 :(得分:1)
我们用于捕获最终用户计算机崩溃或挂起的方法之一是使用优秀的ProcDump实用程序,我们编写一个简单的批处理脚本,可以坐下来等待应用程序无响应,或者您可以设置其他CPU使用率达到特定点时的条件。我在this response中举了一个例子。