Windbg源代码窗口的使用
在 WinDbg 中,源窗口显示已加载到调试器中的源文件。
如何打开源代码窗口
- 通过菜单File--->Open Source File打开源代码文件,窗口随之打开

- 通过快捷键Ctrl+O
- 通过工具栏

- 设置源路径,调试器实时自动打开
使用源代码窗口
通过上面方式打开的窗口如下:

每个源窗口都显示一个源文件的文本。 不能在调试器中编辑源文件。 每个源窗口都具有包含附加命令的快捷菜单。 若要访问菜单,请右键单击标题栏,或单击窗口右上角附近显示的图标(
)。 以下列表描述了一些菜单命令:

Set instruction pointer to current line 会将指令指针的值更改为对应于当前行的指令。 此命令等效于使用 "编辑 |设置当前指令命令或按 CTRL + SHIFT + I.
- Edit this file 在文本编辑器中打开源文件。编辑器由WinDiff编辑器注册表信息或WINDBG_INVOKE_editor环境变量的值确定。例如,当WINDBG_INVOKE_EDITOR的值为以下值时。
c:\my\path\myeditor.exe -file %f -line %l
在这种情况下,Myeditor.exe将打开到当前源文件的基于一行的行号。%l选项表示行号应以一个为基础读取,而%f表示应使用当前源文件。其他替换可能性包括%L(表示行号是基于零的)和%p(表示应使用当前源文件)。
Evaluate selection 通过使用C++表达式计算器来计算当前选定的文本。 结果将显示在调试器命令窗口中。 如果所选文本包含多行,则会产生语法错误。 此命令等效于使用 "编辑 |计算选择命令,按 CTRL + SHIFT + V,或使用 ??(计算C++表达式) 带有所选文本作为参数的命令。
Display selected type 显示所选对象的数据类型。 此显示显示在调试器命令窗口中。 如果所选文本包含多个对象,则可能会显示语法错误或其他不稳定的结果。 此命令等效于使用 "编辑 |显示选定的类型命令,或按 CTRL + SHIFT + Y。
Open memory window for selection 打开一个新的停靠内存窗口,该窗口显示从所选表达式的地址开始的内存。.
Add selection to Watch window 将所选源令牌追加到监视窗口中.
Disassemble at current line 会导致与当前行对应的指令出现在 "反汇编"窗口中。 选定的行将在源窗口和 "反汇编" 窗口中突出显示,但此命令仅影响显示,而不会更改指令指针。 如果单击此命令时 "反汇编" 窗口关闭,则将其打开。.
Select source language 显示一系列编程语言。 选择用于生成源文件的编程语言,然后单击 "确定" 以为当前源窗口启用基本语法突出显示。 选择 " <NONE"> 可禁用当前源窗口的语法突出显示。
源窗口颜色和悬停计算
如果调试器识别源文件扩展名,则源窗口将以彩色显示某些语法元素。 若要关闭或更改颜色,请执行以下操作:
若要在单个窗口中关闭语法颜色,请打开源窗口的快捷菜单,单击 "选择源语言",然后单击 " <无"> 。
若要为所有源窗口关闭语法颜色,请从 "视图" 菜单中选择 "选项"。 然后清除 "分析源语言" 复选框。
若要更改语法颜色,请从 "视图" 菜单中选择 "选项"。 然后,在 "颜色" 区域中,选择语法元素,然后单击 "更改" 按钮更改颜色。
用于突出显示的分析方法取决于与源文件的文件扩展名相关联的编程语言。 若要更改与特定文件扩展名关联的编程语言,请使用 "源语言的文件扩展名" 对话框。 若要打开此对话框,请在 "视图" 菜单中选择 "源语言文件扩展名"。
突出显示表示当前程序计数器的行。 还将突出显示断点所在的行。
如果选择源窗口,然后使用鼠标将鼠标悬停在该窗口中的某个符号上,则将对该符号进行计算。 计算与dt (显示类型) 命令生成的值相同。 若要停用此评估,请从 "视图" 菜单中选择 "选项"。 然后清除 "悬停时计算" 复选框。
Windbg源代码窗口的使用的更多相关文章
- WinDbg命令窗口的使用
调试器命令窗口是windbg中的主要调试信息窗口.可以在此窗口中输入调试程序命令并查看命令输出.Windbg的命令窗口是我们进行调试时,主要打交道的窗口.界面如下 对于windbg,“调试器命令窗口” ...
- WinDbg 图形界面功能(二)
1.2.编辑菜单 这个菜单可以提供Windbg里的各功能窗口的可选文本的编辑功能,比如源代码窗口.命令窗口等提供选择.复制.剪切和黏贴等基础编辑功能. 剪切 单击剪切上编辑菜单中,删除所选的任何文本并 ...
- 使用WinDbg内核调试[转]
Technorati 标签: windbg,内核调试 WINDOWS调试工具很强大,但是学习使用它们并不容易.特别对于驱动开发者使用的WinDbg和KD这两个内核调试器(CDB和NTSD是用户态调试器 ...
- VS调试错误:“没有可用于当前位置的源代码”的解决方案
今天,有朋友在问为什么我在调试的时候会出现"没有可用于当前位置的源代码"的错误呢? MSDN上的说法:没有可用于当前位置的源代码,项目不包含您试图查看代码的源代码.原因通常是双击了 ...
- windbg Symbol file path
SOS是一个调试器扩展,用于调试.NET应用程序.它提供了一组非常丰富的命令,这些命令使开发人员可以对CLR进行深入分析,并且有助于找出应用程序中各种复杂错误的原因. 由于SOS能够提供CLR内部 ...
- 使用GDB调试Go语言
用Go语言已经有一段时间了,总结一下如何用GDB来调试它! ps:网上有很多文章都有描述,但是都不是很全面,这里将那些方法汇总一下 GDB简介 GDB是GNU开源组织发布的⼀一个强⼤大的UNIX下的 ...
- Dreamweaver架设网站终极教程
转自:http://www.cnblogs.com/loveme513/archive/2006/04/03/365969.html 一.定义站点 1. 在任意一个根目录下创建好一个文件夹(我们这里假 ...
- 解决vs2008无法切换设计视图的问题
在 Visual Studio 2008的编辑一个web页面的时候,“源视图”(Source View), 你可以自定义设计视图(Design View)为默认视图. 方法如下: 菜单:工具+选项+h ...
- GDB常用命令
一. gdb使用流程 1.编译生成可执行文件 gcc -g hello.c -o hello 2.启动gdb gdb hello 3. 在main处设置断点 break main 4.运行程序 run ...
随机推荐
- 创建简单Maven项目
目录: Maven基础构建概念.仓库.构建与部署 Maven作用 Maven项目install Maven安装配置.目录结构.配置文件 配置Maven默认本地仓库 Maven常见命令 使用Maven ...
- Aliplayer视频点播加密播放
Aliplayer视频播放器填坑 aliplayer视频点播分为Flash和HTML5两个版本,移动端不支持Flash播放器.Flash播放器兼容IE8+,HTML5播发器支持比较新的浏览器,对浏览器 ...
- 线程池 ThreadPoolExecutor 类的源码解析
线程池 ThreadPoolExecutor 类的源码解析: 1:数据结构的分析: private final BlockingQueue<Runnable> workQueue; // ...
- ROS消息vs服务
1.ROS包消息/服务模式与要点 从功能上看,ROS包是信息交互和处理的基本单元.根据信息的交互和处理方式,ROS包有以下两大类: 消息发布者与订阅者 服务器与客户端 对于消息模式的包,信息的提供者主 ...
- ISO C语言新标准(C11)
新特性[2]有些和C++11是对应的,如线程和UTF-8: 对齐处理(Alignment)的标准化(包括_Alignas标志符,alignof运算符, aligned_alloc函数以及<std ...
- sql server取日期各个组成部分的datename()函数
SQL Server中的日期类型datetime的默认格式是yyyy-mm-dd hh:mi:ss:mmm,很多时候我们可能会需要获取日期中的某个组成部分,因此SQL Server提供了一个daten ...
- Git 核心概念
原文链接 Git的核心概念 聪聪的个人网站 本文不是Git使用教学篇,而是偏向理论方面,旨在更加深刻的理解Git,这样才能更好的使用它,让工具成为我们得力的助手. 版本控制系统 Git 是目前世界上最 ...
- Centos7/Ubuntu 初始化硬盘分区、挂载
刚刚在腾讯云买了一台服务器,刚买的服务器的数据盘都是需要自己来分区的,下面就记录一下操作. 通过命令fdisk-l查看硬盘信息 可以看到有两块硬盘/dev/vda和/dev/vdb,启动vda是系统盘 ...
- html 快速布局
1.每个单词的首字母大写 一般我们会用JS实现,其实CSS就可以实现.JS代码: var str = 'hello world'; str.replace(/( |^)[a-z]/g,(L)=> ...
- 基于.net core 3 和 Orleans 3 的 开发框架:Phenix Framework 7
Phenix Framework 7 for .net core 3 + Orleans 3 发布地址:https://github.com/phenixiii/Phenix.NET7 2019052 ...