zoukankan      html  css  js  c++  java
  • 使用.dmp+vs分析异常

    环境准备

      公共符号缓存目录

        在系统临时目录之外的地方创建一个目录
        如d:\VsSymbolsCache\

      应用程序文件目录

        运行相关文件
          .exe
          .dll
          资源文件等
          .pdb

        如d:\MyApplication\



    过程

      配置“VS>工具>选项>调试”中各选项

        常规

    •       不勾选【启用“仅我的代码”】
    •         Release版的应用程序在编译时经过了vs优化,勾选此选项后无法显示我们的代码,而Debug版没有这个问题
    •       不勾选【要求源文件与原始版本完全匹配】
    •       勾选【为断点和当前语句突出显示整个源行】

        符号

    •       勾选“Microsoft符号服务器”,并在下面的“在此目录下缓存符号”的文字框中填写设置的公共符号目录(d:\VsSymbolsCache\)
    •       单击新建符号目录按钮,填写应用程序的.pdb文件所在的目录(d:\MyApplication\)

      使用VS打开.dmp文件,单击“使用混合进行调试”后等半天

        可以打开“输出”窗口与“模块”窗口看相关的信息

      通过各窗口查看StackTrace(主要是找到引发崩溃的异常所在线程)

        “并行堆栈”窗口
          图形方式显示所有线程的StackTrace
          在此窗口中右键“显示外部代码”后就能在各个能显示StackTrace的窗口中直接显示托管代码(若有源文件)
        “线程”窗口
          列表所有线程
          一般线程名显示为“RtlRaiseException”的线程是抛出托管异常的线程
          先观察“优先级别”高的线程
        “调用堆栈”窗口
          看当前线程的StackTrace

    勉強心を持てば、生活は虚しくない!
  • 相关阅读:
    批处理 星号的替换
    1.1.1 Windows系统内置工具——ipconfig
    2.1 以太网回顾
    书面实验1.3 识别冲突域和广播域
    书面实验1.1:OSI问题
    1.3 OSI模型
    1.2 网络互联模型
    1.1
    如何开启系统服务
    如何查看或启用打开windows功能
  • 原文地址:https://www.cnblogs.com/beta2013/p/3377260.html
Copyright © 2011-2022 走看看