Windbg分析程序崩溃实践案例

【问题描述】
结合实践案例,介绍利用Windbg 分析应用程序崩溃的常用命令及主要步骤。
【解决方案】
下载安装windbg及如何抓取dump文件不在本文介绍,可参考https://vip.kingdee.com/article/268420152696221184?productLineId=1。
设置Symbol路径,在菜单项File下点击Symbol File Path选项即可设置。


3.选择需要分析dump文件,在菜单项File下点击Open Crash Dump选项选择要分析的dump文件。

4.利用常用命令分析dump文件
1)加载常用扩展组件 sos,sosex

2)!pe 打印出发生在所有线程上的最后的异常,可以看出是堆栈溢出问题

3)~*e!clrstack 查看所有线程调用堆栈

分析结论:页面执行反审核操作,调用
Kingdee.K3.SCM.App.Pur.ServicePlugIn.Instock.AutoDeleteInStockWhenPayableUnAudit.EndOperationTransaction(Kingdee.BOS.Core.DynamicForm.PlugIn.Args.EndOperationTransactionArgs)方法,该方法又调用
-- Kingdee.K3.SCM.App.Pur.ServicePlugIn.Instock.AutoDeleteInStockWhenPayableUnAudit.DeleteInStock(Kingdee.BOS.Orm.DataEntity.DynamicObjectCollection, System.Collections.Generic.List`1)方法;该方法又调用
--Kingdee.K3.SCM.App.Pur.ServicePlugIn.Instock.AutoDeleteOutStockWhenInStockUnAudit.BeginOperationTransaction(Kingdee.BOS.Core.DynamicForm.PlugIn.Args.BeginOperationTransactionArgs) 方法,该方法又调用
Windbg分析程序崩溃实践案例
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。



