process explorer 如何生成转储(dmp)文件

Posted 将者,智、信、仁、勇、严也。

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了process explorer 如何生成转储(dmp)文件相关的知识,希望对你有一定的参考价值。

我是直接使用proc exp dump的,因为默认的任务管理器不是所有的process都能dump。

 

 

 

任务管理器dump

任务管理器可以说是最易获取的系统工具,同时它具有生成转储文件的功能。但要注意的是在64位操作系统上面,默认启动的是64位的任务管理器。使用任务管理器生成转储文件需要遵循一个原则:用32位任务管理器给32位进程(无论该进程是运行在32位还是64位系统上面)生成转储文件,用64位任务管理器给64位进程生成转储文件。在64位系统上,32位的任务管理器位于C:\\Windows\\SysWOW64\\taskmgr.exe

生成方法:右键进程 --> 创建转储文件-->弹出对话框提示生成成功,以及dmp文件位置。

类似的工具还有:Process Explorer,PCHunter等。

 

如何在崩溃模式下运行 adplus 但在关机时不写入转储?

【中文标题】如何在崩溃模式下运行 adplus 但在关机时不写入转储?【英文标题】:how can I run adplus in crash mode but not have it write a dump on shutdown? 【发布时间】:2012-05-29 18:46:51 【问题描述】:

如果我跑步:

adplus.exe -pmn "MyClient.exe" -o "d:\DumpFiles" -crash

当我关闭时,我会创建一个转储文件:

FULLDUMP_FirstChance_epr_Process_Shut_Down_MyClient.EXE__333c_2012-05-29_14-29-04-654_2690

有没有办法在崩溃模式下运行 adplus 但不创建这个 Process_Shut_Down 转储? (或者这是否意味着关闭期间出现异常?)

我想监视我的应用程序是否存在运行时异常,但不想在程序正常退出时填满硬盘。

【问题讨论】:

【参考方案1】:

运行adplus时可以指定配置文件:

这是我文件的内容:D:\DumpFiles\conf.txt

<ADPlus Version='2'>
  <Exceptions>  
        <Exception Code="epr">
            <Actions1>Void</Actions1>
            <Actions2>Void</Actions2>
        </Exception> 
   </Exceptions>
</ADPlus>

现在我们可以运行:adplus.exe -c D:\DumpFiles\conf.txt -pmn notepad++ -crash -o "D:\DumpFiles"

使用配置文件解决了这个问题,adplus 似乎很聪明,只是应用这个“epr”例外规则作为唯一的区别。我使用 WinMerge 比较了生成的“DebuggerScript.txt”文件。

注意:如果您使用此配置文件运行 taskkill notepad++,则不会得到转储。

【讨论】:

以上是关于process explorer 如何生成转储(dmp)文件的主要内容,如果未能解决你的问题,请参考以下文章

使用 Process.Start 打开资源管理器窗口会创建过多的 explorer.exe 进程

使用Dependency Walker和Process Explorer搞定第三方软件release版本发布问题

如何在崩溃模式下运行 adplus 但在关机时不写入转储?

工具:Process Explorer

Process Explorer

process explorer和process monitor有啥不同