主题是预配置的windbg工作区,其中包含调试信息窗口的有用配置。任何主题都可以保存为基本工作区。Windows调试工具包中的主题作为一组注册表文件(扩展名为.reg)提供。当您积累更多的调试会话时,会自动设置各种默认工作区。这些默认工作区使用基本工作区作为起点。有关默认工作区的详细信息,请参见WinDbg的工作空间---Work Space
一、加载主题
在加载主题之前,我们建议您清除所有工作区数据。这可以通过三种方式实现:
  • 使用Windbg用户操作接口,在菜单“File”下的“Clear Workspace”的弹出窗体,选择所有,然后点击"OK"
  • 删除注册表键HKCU\Software\Microsoft\Windbg\Workspaces下的内容
  • 通过命令行删除 reg delete HKCU\Software\Microsoft\Windbg.

清除所有工作区数据后,运行其中一个主题。这些文件作为.reg文件存储在Windows安装调试工具的主题目录中。运行主题会将其设置导入注册表,重新定义基本工作区。加载主题后,可以将其更改为更符合您的偏好。

二、自定义主题

在自定义主题之前,必须先加载该主题。加载主题后,在没有命令行参数的情况下启动windbg。这将打开基本工作区。自定义主题有两个常见的焦点区域:设置路径和调整窗口位置。完成任何需要的调整后,退出windbg并从“文件”菜单中选择“保存工作区”来保存工作区。如果要将新设置保存到.reg文件中,请打开regedit并将hkcu\software\microsoft\windbg\workspaces下的注册表项导出到.reg文件中。如果把这个注册表键里面的内容导出为xx.reg文件,则可以把这个文件分享给别人,让别人使用与你相同的配置。在windbg的语境中,这个文件被称为主题(Theme)。

  • 相关路径设置
    通过设置适当的路径,可以确保windbg可以找到有效调试所需的所有文件。要设置的主要路径有三条:符号路径、源路径和可执行映像路径。
  • 调整窗口
     在使用主题之前,您应该调整窗口位置,以便windbg正确处理源文件。这样可以确保源窗口知道停靠在哪里。首先在windbg中打开一个源窗口。选项卡使用为源窗口预留的占位符固定此窗口。为了建立正确的关系,在执行此选项卡停靠操作之前,占位符窗口必须是停靠中的最上面的窗口。现在关闭源窗口,但不关闭占位符窗口。由于调试信息窗口“记住”其最后一次停靠操作,因此在执行此过程后,每个源窗口的最后一次停靠操作都与一个占位符窗口相关联。由于这个内存属性,您不应该关闭任何占位符窗口。此外,如果选择更改主题的配置,则在停靠中重新定位的任何窗口都应始终与占位符文件对齐。

三、使用Windows调试工具中提供的主题

 本节显示Windows调试工具中提供的四个主题中每个主题的配置截图。这些主题分别是standard.reg、standardvs.reg、srcdismbling.reg和multimon.reg
  • Standard.reg

     Standard.reg主题可用于大多数调试目的。在这种排列中,下三分之一的windbg窗口由调试器命令窗口获取。上三分之二大致分成两半。左半部分由一个占位符窗口占据,该窗口指示源窗口在选项卡式集合中打开的位置。右半部分又垂直分为两半。上半部分包含一个选项卡式集合,其中包括手表、局部变量、寄存器和反汇编窗口。下半部分包含一个选项卡式集合,其中包含调用、进程和线程窗口。在每个停靠位置中,还包括一个占位符窗口作为其他窗口的参考点。不应关闭占位符窗口,因为关闭它们可能会更改窗口的配置。此排列中的所有窗口都已停靠。下面的屏幕截图显示Standard.reg主题。

  • Standardvs.reg
     Standardvs.reg主题可以用于大多数调试目的,但在布局上更类似于Visual Studio。在这种排列中,windbg窗口水平分为三部分。上三分之一又垂直分成两半。上三分之一的左半部分包含一个选项卡式集合,其中包括手表、局部变量、寄存器、内存、反汇编和草稿行窗口。上三分之一的右半部分包含一个选项卡式集合,其中包含调用、进程和线程窗口。windbg窗口的下三分之一由调试器命令窗口获取。中间的第三个由一个占位符窗口填充,该窗口指示在选项卡式集合中打开源窗口的位置。在每个停靠位置中,还包括一个占位符窗口作为其他窗口的参考点。不应关闭占位符窗口,因为关闭它们可能会更改窗口的配置。这种布置中的所有窗户都是对接的。以下屏幕截图显示Standardvs.reg主题。
  • Srcdisassembly.reg
     srcDisassembly.reg主题包括一个反汇编窗口,用于在汇编模式下进行调试。在这种排列中,windbg窗口被垂直地分为两部分,而形成的每一半又被水平地分为三部分。在右半部分,上三个是局部变量和监视窗口的选项卡式集合,中间三个是调试器命令窗口,下三个是进程、线程和调用窗口的选项卡式集合。在左半部分,上三分之二由一个显示源窗口在选项卡式集合中打开位置的占位符窗口获取;下三分之一由反汇编窗口获取。在每个停靠位置中,还包括一个占位符窗口作为其他窗口的参考点。不应关闭占位符窗口,因为关闭它们可能会更改窗口的配置。这种布置中的所有窗户都是对接的。下面的屏幕截图显示srcambolution.reg主题。

  • Multimon.reg
    multimon.reg主题是为使用多个监视器进行调试而设置的。在此安排中,将创建一个新的停靠,以便在一个监视器上查看windbg窗口,在另一个监视器上查看新的停靠。windbg窗口由一个占位符窗口填充,该窗口指示在选项卡式集合中打开源窗口的位置。新码头分为四个部分。左上角包含一个选项卡式集合,其中包括Watch和Locals窗口。右上角包含一个选项卡式集合,其中包含寄存器、内存、反汇编、草稿页、进程和线程窗口。左下角包含调试器命令窗口。右下角包含Calls窗口。在每个停靠位置中,还包括一个占位符窗口作为其他窗口的参考点。不应关闭占位符窗口,因为关闭它们可能会更改窗口的配置。这种布置中的所有窗户都是对接的。以下屏幕截图显示multimon.reg主题。

Windbg的主题---Theme的更多相关文章

  1. 总结一下Android中主题(Theme)的正确玩法

    在AndroidManifest.xml文件中有<application android:theme="@style/AppTheme">,其中的@style/AppT ...

  2. Struts2的模板和主题theme及自定义theme的使用

    Struts2的模板和主题theme及自定义theme 标签: struts2 2016-03-29 11:22 190人阅读 评论(0) 收藏 举报  分类: javaweb(8)  Struts2 ...

  3. 第十四章:样式(Style)和主题(Theme)

    简介 Android的样式(Style)和主题(Theme)文件就好比WEB开发中的CSS一样,可以实现UI界面的风格统一管理,这和Windows平台的XAML格式(Silverlight.WPF)类 ...

  4. 【转载】总结一下Android中主题(Theme)的正确玩法

    http://www.cnblogs.com/zhouyou96/p/5323138.html 总结一下Android中主题(Theme)的正确玩法 在AndroidManifest.xml文件中有& ...

  5. Android菜鸟的成长笔记(6)——剖析源码学自定义主题Theme

    原文:Android菜鸟的成长笔记(6)--剖析源码学自定义主题Theme 还记得在Android菜鸟的成长笔记(3)中我们曾经遇到了一个问题吗?"这个界面和真真的QQ界面还有点不同的就是上 ...

  6. Android 主题theme说明 摘记

    主题Theme就是用来设置界面UI风格,可以设置整个应用或者某个活动Activity的界面风格.在Android SDK中内置了下面的Theme,可以按标题栏Title Bar和状态栏Status B ...

  7. Android下Notification,样式style,主题theme的功能实现

    一:Notification 1.NotificationManager nm = (NotificationManager) getSystemService(NOTIFICATION_SERVIC ...

  8. 主题 Theme 小结

    主题的使用 默认创建的Android工程中,在AndroidManifest.xml文件中有<application android:theme="@style/AppTheme&qu ...

  9. struts2官方 中文教程 系列十四:主题Theme

    介绍 当您使用一个Struts 2标签时,例如 <s:select ..../>  在您的web页面中,Struts 2框架会生成HTML,它会显示外观并控制select控件的布局.样式和 ...

随机推荐

  1. 论文笔记: Matrix Factorization Techniques For Recommender Systems

    Recommender system strategies 通过例子简单介绍了一下 collaborative filtering 以及latent model,这两个方法在之前的博客里面介绍过,不累 ...

  2. MVC学习笔记(三)—用EF向数据库中添加数据

    1.在EFDemo文件夹中添加Controllers文件夹(用的是上一篇MVC学习笔记(二)—用EF创建数据库中的项目) 2.在Controllers文件夹下添加一个空的控制器(StudentsCon ...

  3. [golang]按图片中心旋转后的新图左顶点和原图左顶点的偏移量计算

    1 前言 略,作为记录使用 2 代码 /** * @Author: FB * @Description: * @File: RotateSample.go * @Version: 1.0.0 * @D ...

  4. JS国际化网站中英文切换(理论支持所有语言)应用于h5版APP

    网页框架类APP实现国际化参考文案一 参考:https://blog.csdn.net/CSDN_LQR/article/details/78026254 另外付有自己实现的方法 本人用于H5版的AP ...

  5. Linux三剑客grep/sed/awk

    grep/sed/awk被称为linux的“三剑客” grep更适合单纯的查找或匹配文本: sed更适合编辑匹配到的文本: awk更适合格式化文本,对文本进行较复杂各式处理: Grep --color ...

  6. MSSQL镜像场景

    1.版本:一般MSSQL2016以下版本使用. 2.适用小数据库容量的异地备份:如果是数据库容量较大,产生的日志比较多:经测试,9G的数据库大小,镜像数月个日志大小达到400G,硬盘开销太大.

  7. Shell脚本编程30分钟入门(小结)(转)

    原文链接https://www.jb51.net/article/161028.htm 什么是Shell脚本 Shell脚本(英语:Shell script),又称Shell命令稿.程序化脚本,是一种 ...

  8. 今天看了《SOFT SKILLS The Software Developer's Life Manual》有感

    从第四篇生产力开始看的,书中提到了专注,待续

  9. Docker基础用法篇

    Docker基础用法篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.安装docker 1>.依赖的基础环境 64 bits CPU Linux Kerner 3.10+ ...

  10. 安装lamp服务器

    1.安装http: $ yum install httpd 2.启动http: $ systemctl start httpd 3.访问:http://192.168.1.100 4.Installi ...