您的位置首页  基金资讯

蓝屏 Dump文件分析方法windbg汉化

  • 来源:互联网
  • |
  • 2017-02-01
  • |
  • 0 条评论
  • |
  • |
  • T小字 T大字

最终发现了蓝屏原因是我编写的一个小软件在显示动态曲线时导致I对象被耗尽的缘故。

bluescreenview大小才几十kb,有绿色汉化的。打开后,它会列出C:\下的崩溃文件。双击相应条目,弹出更详细的属性信息:

但我却写成了:

2、BlueScreenView和WhoCrashed

PrimaryAnalysis

WhoCrashedhome版显示的更不怎么详细,同样的dump文件才显示如下的一点内容而已。不推荐~

CBitmap*CDC::SelectObject(CBitmap*pBitmap){return(CBitmap*)SelectGdiObject(m_hDC,pBitmap-GetSafeHandle());}

后面两个软件只定位到win32k.sys这个文件,至于更详细的内容基本没了。

虽CDC::SelectObject(HIOBJhObject)在MSDN中没有提到(MSDN有CGdiObject*SelectObject(CGdiObject*pObject)),但i却有其定义,且调试时到了这里~~~可看到错误的选入了HIOBJ句柄,而不是HBITMAP句柄~~~

里面提到的重点就是dwm.exe和win32k.sys。事实的确如此,今天我电脑蓝屏前,就是dwm.exe先异常的!!!dwm.exe是桌面窗口管理器~~~它为什么会崩溃呢?见下文

推荐第一个在线分析网站,对dump文件分析的很全面!也不需要安装什么软件~~~

调试:

正确代码第一句将进入:

//错误代码:CBitmap*pOldBmp=(CBitmap*)memdc.SelectObject(memBmp);......memdc.SelectObject(pOldBmp);//返回NULL,倒不会导致gdi对象增加!!返回非NULL,gdi对象占用将不断增加

//正确代码:mdc.SelectObject(pOldBmp);

免责声明:本站所有信息均搜集自互联网,并不代表本站观点,本站不对其真实合法性负责。如有信息侵犯了您的权益,请告知,本站将立刻处理。联系QQ:1640731186
友荐云推荐