zoukankan      html  css  js  c++  java
  • 如何明确指定命令所在的debugger extension?

    问题的场景是这样的, 你在看dump文件, 运行了一个命令, 可是你觉得这个命令跟平常你看到的该命令的输出有点不大一样. 你感觉很困惑, 怀疑是不是这个命令不属于你希望的那个debugger extension. 怎么办?

    比方说, psscor2.dll 和 sos.dll 都包含有一些命令, 你的debugger 又同时加载了两个debugger, 你运行了一个!threads, 却不清楚这个究竟是psscor2.dll的命令还是sos.dll的.

    解决方案

    ===========

    第一种, 明确指定debugger extension. 使用下面的格式

    ![DebuggerExtension].[Command] Arguments

    举例:

    !psscor2.threads -special

    第二种, 使用.chain命令, 查看已加载的debugger extension的顺序, 谁在上面, 谁的命令就先被找到.

    0:018> .chain
    Extension DLL search Path:
        C:\Program Files\Debugging Tools for Windows (x64)\WINXP;C:\Program Files\Debugging Tools for Windows (x64)\winext;C:\Program Files\Debugging Tools for Windows (x64)\winext\arcade;C:\Program Files\Debugging Tools for Windows (x64)\pri;C:\Program Files\Debugging Tools for Windows (x64);C:\Program Files\Debugging Tools for Windows (x64)\winext\arcade;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\

    Extension DLL chain:
        C:\Windows\Microsoft.NET\Framework64\v2.0.50727\sos: image 2.0.50727.4952, API 1.0.0, built Thu May 13 20:15:18 2010
            [path: C:\Windows\Microsoft.NET\Framework64\v2.0.50727\sos.dll]
        psscor2: image 2.0.0.1, API 1.0.0, built Thu Mar 25 03:25:01 2010
            [path: C:\Program Files\Debugging Tools for Windows (x64)\psscor2.dll]
        dbghelp: image 6.11.0001.404, API 6.1.6, built Thu Feb 26 10:10:27 2009
            [path: C:\Program Files\Debugging Tools for Windows (x64)\dbghelp.dll]
        ext: image 6.11.0001.404, API 1.0.0, built Thu Feb 26 10:10:26 2009
            [path: C:\Program Files\Debugging Tools for Windows (x64)\winext\ext.dll]
        exts: image 6.11.0001.404, API 1.0.0, built Thu Feb 26 10:10:17 2009
            [path: C:\Program Files\Debugging Tools for Windows (x64)\WINXP\exts.dll]
        uext: image 6.11.0001.404, API 1.0.0, built Thu Feb 26 10:10:20 2009
            [path: C:\Program Files\Debugging Tools for Windows (x64)\winext\uext.dll]
        ntsdexts: image 6.1.7015.0, API 1.0.0, built Thu Feb 26 10:09:22 2009
            [path: C:\Program Files\Debugging Tools for Windows (x64)\WINXP\ntsdexts.dll]

    从上面的命令可以看出, 这里SOS.dll中的命令会先被搜索到. 因为.chain命令会按照默认的搜索顺序列出所以已经加载了的debugger extension. 所以在这样的情况下, 运行!threads命令的话, 执行的会是SOS.dll中的命令.

    .chain命令的帮助信息如下:

    .chain (List Debugger Extensions)

    The .chain command lists all loaded debugger extensions in their default search order.

  • 相关阅读:
    【Android Developers Training】 73. 布局变化的动画
    【Android Developers Training】 72. 缩放一个视图
    【Android Developers Training】 71. 显示翻牌动画
    svn更改地址怎么办
    python学习手册
    failed to bind pixmap to texture
    Ubuntu 12.04安装Google Chrome
    svn update 时总是提示 Password for '默认密钥' GNOME keyring: 输入密码
    重设SVN 的GNOME keyring [(null)] 的密码
    Nginx + uWSGI + web.py 搭建示例
  • 原文地址:https://www.cnblogs.com/awpatp/p/1848774.html
Copyright © 2011-2022 走看看