ld (Load Symbols)

ld命令加载指定模块的符号并更新所有模块信息。

ld ModuleName [/f FileName]

参数:

  • ModuleName
    指定要加载其符号的模块的名称。modulename可以包含各种通配符和说明符。
  • /f FileName
    更改为匹配项选择的名称。默认情况下,模块名是匹配的,但使用/f时,文件名是匹配的,而不是模块名。文件名可以包含各种通配符和说明符。
调试器的默认行为是使用延迟符号加载(也称为延迟符号加载)。这意味着符号在需要之前不会实际加载。 另一方面,ld命令强制加载指定模块的所有符号。

ln (List Nearest Symbols)

ln命令显示给定地址处或附近的符号。

ln Address
ln /D Address

参数:

  • Address
    指定调试器开始搜索符号的地址。将显示最近的符号(地址之前或之后)。
  • /D
    指定使用调试器标记语言(DML)显示输出。DML输出包含一个链接,您可以使用该链接浏览包含最近符号的模块。它还包括一个链接,可用于设置断点。

可以使用ln命令来帮助确定指针指向什么。当您查看损坏的堆栈以确定哪个过程进行了调用时,此命令也很有用。如果源行信息可用,LN显示还包括源文件名和行号信息。如果使用的是源服务器,则ln命令将显示与源服务器相关的信息。

.copysym (Copy Symbol Files)

.copysym命令将当前符号文件复制到指定目录。

.copysym [/l] Path

参数:

  • /l
    使每个符号文件在复制时加载。
  • Path
    指定符号文件应复制到的目录。副本不会覆盖现有文件。

很多时候,符号存储在网络上。符号访问通常很慢,或者您可能需要将调试会话传输到不再具有网络访问权限的另一台计算机。在这种情况下,.copysym命令可用于将会话所需的符号复制到本地目录。

.symfix (Set Symbol Store Path)

.symfix命令自动将符号路径设置为指向Microsoft符号存储。

.symfix[+] [LocalSymbolCache]

参数:

  • +

    使Microsoft符号存储路径附加到现有符号路径。如果不包括此项,则替换现有符号路径。

  • LocalSymbolCache
    指定要用作本地符号缓存的目录。如果此目录不存在,则将在符号服务器开始复制文件时创建。如果省略localsymbolcache,则将使用调试器安装目录的sym子目录。

下面的示例演示如何使用.symfix设置指向Microsoft符号存储的新符号路径。

3: kd> .symfix c:\myCache
3: kd> .sympath
Symbol search path is: srv*
Expanded Symbol search path is: cache*c:\myCache;SRV*http://msdl.microsoft.com/download/symbols

下面的示例演示如何使用.symfix+将现有符号路径附加到指向Microsoft符号存储的路径。

3: kd> .sympath
Symbol search path is: c:\someSymbols
Expanded Symbol search path is: c:\somesymbols
3: kd> .symfix+ c:\myCache
3: kd> .sympath
Symbol search path is: c:\someSymbols;srv*
Expanded Symbol search path is: c:\somesymbols;cache*c:\myCache;SRV*http://msdl.microsoft.com/download/symbols

.symopt (Set Symbol Options)

.symopt命令设置或显示符号选项。
.symopt+ Flags
.symopt- Flags
.symopt

参数:

  • +
    使标志指定的符号选项被设置。如果.symopt与标志一起使用,但没有加号或减号,则假定为加号。
  • -
    使由标志指定的符号选项被清除。
  • Flags
    指定要改变的符号选项。Flags必须是这些符号选项的比特Flags的总和。

不带任何参数,.symopt显示当前符号选项。

.sympath (Set Symbol Path)

.sympath命令设置或更改符号路径。符号路径指定调试器查找符号文件的位置。

.sympath[+] [Path [; ...]]

参数:

  • +
    指定新位置将附加到(而不是替换)上一个符号搜索路径。
  • Path
    完全路径或完全路径的列表。多条路径用分号分隔。如果忽略路径,则显示当前符号路径。
当符号路径更改时,将不会加载新的符号信息。您可以使用.reload (Reload Module)命令重新加载符号。

!sym

这个扩展命令控制噪声符号加载和符号提示。
!sym
!sym noisy
!sym quiet
!sym prompts
!sym prompts off

参数:

  • noisy
    激活干扰符号加载。
  • quiet
    禁用干扰符号加载。
  • prompts
    允许在Symsrv收到身份验证请求时显示身份验证对话框。
  • prompts off
    当Symsrv接收到一个认证请求时,删除所有认证对话框。这可能导致SYMSRV无法访问因特网上的符号。
如果!sym符号扩展不带参数,显示噪声符号加载和符号提示的当前状态。这个!sym noisy和!sym quiet符号静音扩展控制噪声符号加载。这个!sym prompts和!sym prompts off控制当symsrv遇到身份验证请求时是否显示身份验证对话框。这些命令必须后跟.reload(重新加载模块)才能生效。身份验证请求可以由代理服务器、Internet防火墙、智能卡读卡器和安全网站发送。

!symsrv

关闭symbol服务器客户端。

!symsrv close

这个!symsrv close扩展将关闭任何活动的symbol服务器客户端。如果需要重新同步连接,这将非常有用。如果您以前拒绝过Internet身份验证请求,则需要使用!symsrv close可重新连接到符号存储。

WinDbg常用命令系列---符号相关命令的更多相关文章

  1. Linux命令大全----系统管理相关命令

    林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka       摘要:本文主要讲了Linux命令大全----系统管理相关命令,并附有实例 一.安装 ...

  2. WinDbg常用命令系列---.write_cmd_hist (写命令历史记录)

    .write_cmd_hist 简介 .write_cmd_hist命令将调试器命令窗口的整个历史记录写入文件. 使用形式 .write_cmd_hist Filename 参数 Filename指定 ...

  3. 05_NoSQL数据库之Redis数据库:Redis的常用命令,键值相关命令和服务器相关命令

     Redis常用命令 Redis提供了丰富的命令对数据库和各种数据库类型进行操作,这些命令可以再Linux终端使用. 键值相关命令: Keys:返回满足给定pattern的所有key 用表达式*表 ...

  4. dos命令:网络相关命令

    网络相关命令 一.Arp命令 1.介绍 ​ 显示和修改地址解析协议(ARP)使用的“IP 到物理”地址转换表. 2.语法 ARP -s inet_addr eth_addr [if_addr] ARP ...

  5. WinDbg常用命令系列---异常相关操作

    .exr (Display Exception Record) .exr命令显示异常记录的内容. .exr Address .exr -1 参数: Address指定异常记录的地址.如果指定-1作为地 ...

  6. WinDbg常用命令系列---线程相关操作~*

    ~ (Thread Status) 波浪符(~)命令显示指定线程或当前进程中所有线程的状态. ~ Thread 参数: Thread指定要显示的线程.如果省略此参数,将显示所有线程. 环境: 模式 仅 ...

  7. Windbg程序调试系列1-常用命令说明&示例

    Windbg程序调试是.Net高级开发需要掌握的必备技能,分析内存泄露.分析高CPU.分析线程阻塞.分析内存对象.分析线程堆栈.Live Dedugging.这个领域可以说一个技能+场景化应用的结合, ...

  8. 【常用命令】Linux相关命令

    [[TOC]] iostat - 查看系统I/O状况 -k Display statistics in kilobytes per second -m Display statistics in me ...

  9. linux常用命令-1系统相关命令

    hostname #计算机名 passwd #修改密码 reboot #重启 shutdown –r now #立刻重启(root用户使用) shutdown –r 10 #过10分钟自动重启(roo ...

随机推荐

  1. Go语言【数据结构】字符串

    字符串 简介 一个字符串是一个不可改变的字节序列,字符串通常是用来包含人类可读的文本数据.和数组不同的是,字符串的元素不可修改,是一个只读的字节数组.每个字符串的长度虽然也是固定的,但是字符串的长度并 ...

  2. 【实战经验】Xilinx时钟从普通IO输出问题

    Xilinx芯片的时钟信号从普通IO输出时,在map过程中会出错,对此有两种解决方案: 1.在ucf文件中,添加对应的约束文件: 例如[PIN "U0_1/clkout2_buf.O&quo ...

  3. Shell编程学习(六)

    Shell 脚本条件测试与比较 条件测试方法综述 在Bash的各种条件结构和控制结构中都要进行各种测试,然后根据测试结果执行不同的操作,有时也会与if等条件语句相结合,来完成测试判断,以减少程序运行的 ...

  4. 安装macOS时遇到Unable to unmount volume for repair异常导致无法完成安装的解决办法

    方法一: 使用终端命令行制作完macos安装U盘后,务必将.IAProductInfo文件放到U盘的根目录(非EFI分区的) sudo /Applications/Install\ macOS\ Si ...

  5. java之hibernate之加载策略和抓取策略

    1.加载策略:指hibernate查询数据时,采用什么样的方式将数据写入内存.Hibernate中提供了两种方式来加载数据:懒加载和即时加载. 2.懒加载又称延迟加载,指使用hiberante API ...

  6. 部署http访问SVN模式出现403问题

    部署http访问SVN模式到阿里云服务器 参考连接地址 https://help.aliyun.com/document_detail/52864.html 设置好账号进行访问 http://ip/s ...

  7. React: JSX生成真实DOM结点

    在上一篇文章中,我们介绍了 Babel 是如何将 JSX 代码编译成可执行代码的,随后也实现了一个自己的解析器,模拟了 Babel 编译的过程. 现在我们再来回顾一下,假定有如下业务代码: const ...

  8. Upgrade Windows Server 2016 to Windows Server 2019

    Pre-Upgrade Upgrade path: Windows Server 2016 can be upgraded to Windows 2019 in a single upgrade pr ...

  9. [CAN].CAN总线详解

    转自:https://blog.csdn.net/cheatscat/article/details/82886889 CAN(Controller Area Network)总线协议是由 BOSCH ...

  10. Oid 类

    参考地址:https://docs.microsoft.com/zh-cn/dotnet/api/system.security.cryptography.oid?redirectedfrom=MSD ...