主题是预配置的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. Go基础编程实践(三)—— 日期和时间

    日期和时间 package main import ( "fmt" "time" ) func main() { // 获取当前时间 current := ti ...

  2. 转!!通俗理解数字加密,数字签名,数字证书和https

    原博文地址:https://www.jianshu.com/p/4932cb1499bf 前言 最近在开发关于PDF合同文档电子签章的功能,大概意思就是在一份PDF合同上签名,盖章,使其具有法律效应. ...

  3. yii框架定时任务的操作

    在项目根目录里找到console(操作台,控制台)文件夹,在console文件夹里建一个TestController文件,如图所示: 文件内部写如下内容: 切记该文件继承的Controller一定是 ...

  4. C# vb .net实现像素化效果滤镜打马赛克

    在.net中,如何简单快捷地实现Photoshop滤镜组中的像素化效果打马赛克呢?答案是调用SharpImage!专业图像特效滤镜和合成类库.下面开始演示关键代码,您也可以在文末下载全部源码: 设置授 ...

  5. SQLServer更新数据库每行一个随机数

    代码: ) DECLARE user_extension_cursor CURSOR FOR SELECT UserCode FROM Users OPEN user_extension_cursor ...

  6. 1.Tomcat组件梳理—Bootstrap启动器

    Tomcat组件梳理-Bootstrap启动器 一开始是直接从Server开始做梳理的,但是发现有很多东西是从Catalina传输过来的,Catalina又是从Bootstrap启动的,所以还是回过头 ...

  7. 必须掌握的Linux用户组知识

    在 Linux 系统中用户组起着重要作用.用户组提供了一种简单方法供一组用户互相共享文件.用户组也允许系统管理员更加有效地管理用户权限,因为管理员可以将权限分配给用户组而不是逐一分配给单个用户. 尽管 ...

  8. ps 修补工具

    最近刚好遇到需要p图去除水印,这里将ps去除水印的使用记录下来已备翻阅 1.需求图片(如下),使用软件 photo shop cc 2017(以下简称ps) 2.操作 2.1方法一 使用五点修复画笔工 ...

  9. day 03 作业 预科

    目录 作业 1.简述变量的组成 2.简述变量名的命名规范 3.简述注释的作用 4.使用turtle库构造一幅图,贴在markdown文档中 作业 1.简述变量的组成 变量由变量名.赋值符号.变量值所组 ...

  10. 搭建docker本地仓库

    如果没有创建docker环境的话,需要先安装docker环境. 1. 使用命令创建容器 docker run -d -p 8081:8080 atcol/docker-registry-ui 8081 ...