主题是预配置的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. Aspx后台遍历控件

    aspx设计页面 //这个是检测按钮,检测下面的checkbox是否被选中.选中时打印其值 //https://www.cnblogs.com/pwblog/articles/3456385.html ...

  2. oracle查询包含在子表中的主表数据

    Oracle数据库,查询某表中包含在子表中的数据,子表中数据按特定条件来源于该父表,SQL命令如 ) a_table父表,b_table子表,a和b表都有commandId列,a表的commandId ...

  3. ASP.NET SignalR 系列(五)之群组推送

    在上一章介绍了 一对一推送的方式,这章重点介绍下群组推送和多人推送 群组主要就是用到了方法:Groups.Add(Context.ConnectionId, groupName); 将不同的连接id加 ...

  4. 以yarn-client方式提交spark任务,任务一直卡在ACCEPTED状态

    问题背景 spark是以客户端的方式安装的,并没有启动spark的mesos集群,这时候的spark就相当与hive客户端. 以local模型和yarn-cluster方式提交任务,都能正确额执行,但 ...

  5. 解决Ajax前台中文传到后台出现中文乱码

    遇到的问题是: 前台利用Ajax, get方式向后台发送中文数据出现乱码. 解决办法是前台两次编码, 后台一次解码即可. 前台jsp文件 1 var text = "张三"; 3 ...

  6. MES选型很困惑?避开这三个禁忌!

    MES系统的选型除了要充分剖析自己企业,掌握自己企业的需要.信息化的目标.自身的特点外,还要完全了解MES系统供应商,对其实力.软件性能.服务.用户.软件实施速度.价格进行了解与分析,这也是MES系统 ...

  7. idea忽略并隐藏.idea文件夹.iml文件不提交到svn

    File-->setting-->Editor-->File Types 选中.boringignore,添加*.iml;.idea;即可

  8. java-检查IP和端口在超时时间内是否可以连接

    检查IP和端口在超时时间内是否可以连接 /** * 检查IP和端口是否可以连接 * @param ip * @param port * @return */ private static boolea ...

  9. ubuntu16.04+GTX2080Ti+torch7安装记录

    环境说明 ubuntu16.04 cuda10.0 2080Ti显卡 拉取代码和修改编译脚本 拉取代码 用户先clone代码: git clone https://github.com/torch/d ...

  10. Linux文件系统及管理

    Linux文件系统及管理 一.Linux系统的文件系统与目录结构   Linux系统的文件目录结构为一个单根倒置的树结构,具体表现如下图: 从CentOS7开始,以下目录与之前的版本发生变化 ◆/bi ...