WinDbg常用命令系列---显示加载的模块列表lm
lm (List Loaded Modules)
lm命令显示指定的加载模块。输出包括模块的状态和路径。
lmOptions [a Address] [m Pattern | M Pattern]
参数:
- Options
以下选项的任意组合:
D----使用调试器标记语言显示输出。
o---仅显示加载的模块。
l---仅显示其符号信息已加载的模块。
v---显示详细信息。 显示所包括的符号文件名称、 图像文件名称、 校验和信息、 版本信息、 日期戳,时间戳和是否托管该模块的信息代码 (CLR)。 如果相关标头缺失或分页出未显示此信息。
u---(仅适用于内核模式)仅显示用户模式下符号的信息。
k---(仅适用于内核模式)仅显示内核模式下符号的信息。
e---仅显示有符号问题的模块。这些符号包括没有符号的模块和符号状态为C,T, #,M 或export的模块。
c---显示校验和
lm---减少输出,以便除了模块的名称之外不包含任何内容。如果使用.foreach标记将命令输出管道化为另一个命令的输入,则此选项非常有用。
sm---按模块名称而不是起始地址对显示进行排序。
此外,您只能包含以下选项之一。如果不包括这些选项中的任何一个,则显示将包括符号文件名。
i---显示的图像文件名称。
f---显示完整图像路径。(除非发出.reload-s命令,否则此路径始终与初始加载通知中显示的路径匹配。)使用f时,不显示符号类型信息。
n---显示jimage名称。使用n时,不显示符号类型信息。
p---显示映射的映像名称。 当使用 p 时,不显示符号的类型信息。
t---显示的文件时间戳。 当使用 t 时,不显示符号的类型信息。 - a Address
指定此模块中包含的地址。只显示包含此地址的模块。如果address包含表达式,则必须将其括在括号中。 - m Pattern
指定模块名必须匹配的模式。模式可以包含各种通配符和说明符。在大多数情况下,模块名是没有文件扩展名的文件名。例如,如果要显示有关flpydisk.sys驱动程序的信息,请使用lm mflpydisk命令,而不是lm mflpydisk.sys。在某些情况下,模块名与文件名有很大不同。 - M Pattern
指定image路径必须匹配的模式。模式可以包含各种通配符和说明符。
lm命令列出所有模块以及每个模块的符号状态。Microsoft Windows Server 2003和更高版本的Windows维护用户模式进程的卸载模块列表。在调试用户模式进程或转储文件时,lm命令还显示这些已卸载的模块。此命令显示多个列或字段,每个列或字段具有不同的标题。其中一些标题具有特定含义:
- 模块名通常是没有文件扩展名的文件名。在某些情况下,模块名与文件名有很大不同。
- 符号类型紧跟在模块名称之后。此列未标记。如果已加载符号,则符号文件名将跟随此列。
- 模块中的第一个地址显示为start。模块结束后的第一个地址显示为结束。例如,如果开始为“faab4000”,结束为“faab8000”,则模块将从0xfaab4000扩展到0xfaab7fff(含)。
- 仅限lmv:image path列显示可执行文件的名称,包括文件扩展名。通常,完整路径包含在用户模式中,但不包含在内核模式中。
- 仅限LMV:加载的符号图像文件值与图像名称相同,除非存在Microsoft代码视图符号。
- 仅限lmv:通常不使用映射内存图像文件值。如果调试器正在映射映像文件(例如,在小型转储调试期间),则此值是映射映像的名称。
kd> lm m s*
start end module name
f9f73000 f9f7fd80 sysaudio (deferred)
fa04b000 fa09b400 srv (deferred)
faab7000 faac8500 sr (deferred)
facac000 facbae00 serial (deferred)
fb008000 fb00ba80 serenum e:\mysymbols\SereEnum.pdb\.......
fb24f000 fb250000 swenum (deferred) Unloaded modules:
f9f53000 f9f61000 swmidi.sys
fb0ae000 fb0b0000 splitter.sys
fb040000 fb043000 Sfloppy.SYS
以下两个示例显示lm命令一次不带任何选项,一次带sm选项。比较两个例子中的排序顺序。
0:000> lm
start end module name
01000000 0100d000 stst (deferred)
77c10000 77c68000 msvcrt (deferred)
77dd0000 77e6b000 ADVAPI32 (deferred)
77e70000 77f01000 RPCRT4 (deferred)
7c800000 7c8f4000 kernel32 (deferred)
7c900000 7c9b0000 ntdll (private pdb symbols) c:\db20sym\ntdll.pdb
0:000> lmsm
start end module name
77dd0000 77e6b000 ADVAPI32 (deferred)
7c800000 7c8f4000 kernel32 (deferred)
77c10000 77c68000 msvcrt (deferred)
7c900000 7c9b0000 ntdll (private pdb symbols) c:\db20sym\ntdll.pdb
77e70000 77f01000 RPCRT4 (deferred)
01000000 0100d000 stst (deferred)
WinDbg常用命令系列---显示加载的模块列表lm的更多相关文章
- WinDbg常用命令系列---显示段选择器dg、链接列表dl和字符串ds/dS
dg (Display Selector) dg命令显示指定选择器的段描述符. dg FirstSelector [LastSelector] 参数: FirstSelector指定要显示的第一个选择 ...
- WinDbg常用命令系列---显示局部变量dv
dv (Display Local Variables) dv命令显示当前作用域中所有局部变量的名称和值. dv [Flags] [Pattern] 参数: Flags显示其他信息.可以包括以下任何区 ...
- WinDbg常用命令系列---显示数据类型dt/dtx
dt (Display Type) dt命令显示有关局部变量.全局变量或数据类型的信息.这可以显示有关简单数据类型以及结构和联合的信息. 用户模式下: dt [-DisplayOpts] [-Sear ...
- WinDbg常用命令系列---显示引用的内存(dda、ddp、ddu、dpa、dpp、dpu、dqa、dqp、dqu)
命令dda, ddp, ddu, dpa, dpp, dpu, dqa, dqp, 和 dqu在指定位置显示指针,取消对该指针的引用,然后以各种格式显示结果位置的内存. ddp [Options] [ ...
- WinDbg常用命令系列---显示当前异常处理程序链!exchain
!exchain 这个!exchain扩展命令显示当前异常处理程序链. !exchain [Options] 参数: Options下列值之一: /c 如果检测到异常,则显示与调试C++ try/c ...
- WinDbg常用命令系列---显示数字格式化.formats
.formats (Show Number Formats) .formats命令在当前线程和进程的上下文中计算表达式或符号,并以多种数字格式显示它. .formats expression 参数: ...
- WinDbg常用命令系列---源代码操作相关命令
lsf, lsf- (Load or Unload Source File) lsf和lsf-命令加载或卸载源文件. lsf Filename lsf- Filename 参数: Filename指定 ...
- WinDbg常用命令系列---断点操作b*
ba (Break on Access) ba命令设置处理器断点(通常称为数据断点,不太准确).此断点在访问指定内存时触发. 用户模式下 [~Thread] ba[ID] Access Size [O ...
- WinDbg常用命令系列---符号相关命令
ld (Load Symbols) ld命令加载指定模块的符号并更新所有模块信息. ld ModuleName [/f FileName] 参数: ModuleName指定要加载其符号的模块的名称.m ...
随机推荐
- java网站架构演变过程
网站架构演变过程. .传统架构.传统的SSH架构,分为三层架构web控制层.业务逻辑层.数据库访问层..传统架构也就是单点应用,就是大家在刚开始初学JavaEE技术的时候SSH架构或者SSM架构,业务 ...
- MSSQLSERVER 服务运行内存设置较小导致启动服务失败
问题产生原因: 手动设置MSSQLSERVER 运行内存,设置值未达到MSSQLSERVER 服务运行内存最低值(max server memory 所允许的最小内存量是 128 MB.),导致MSS ...
- Spring中的ApplicationListener的使用详解案例
本文链接:https://blog.csdn.net/u010963948/article/details/83507185 1.ApplicationContext Spring的核心,Contex ...
- 使用IDEA运行项目时提示:Warning:java: 源值1.5已过时, 将在未来所有发行版中删除
如图 在使用IDEA运行项目时,在下方提示:Warning:java: 源值1.5已过时, 将在未来所有发行版中删除 这是因为JDK版本问题 解决方法如下:左上角 file ——> Projec ...
- robotframe添加自定义lib 报Importing test library ‘xxxx’ failed
问题现象:在linux服务器上搭建jenkins 执行robot工程时报:Importing test library ‘xxxx’ failed 问题分析一: 在library 引入非rob ...
- 如何在Win7电脑上增加新磁盘分区?
原文链接: https://www.cnblogs.com/haoxitong/p/9405497.html 我们在重装好系统Win7系统后有时会碰到需要新建磁盘分区的情况,这时我们再重装系统进行磁盘 ...
- 常见数据结构的 Python 实现(建议收藏)
数据结构作为计算机基础的必修内容,也是很多大型互联网企业面试的必考题.可想而知,它在计算机领域的重要性. 然而很多计算机专业的同学,都仅仅是了解数据结构的相关理论,却无法用代码实现各种数据结构. 今日 ...
- 三、Linux_环境变量
环境变量配置: # 每次进入命令都要重新source /etc/profile 才能生效? # 解决办法:将环境变量放置到~/.bashrc文件中 $ vim ~/.bashrc # 在里面添加相关的 ...
- 19.centos7基础学习与积累-005-命令总结01
从头开始积累centos7系统运用 大牛博客:https://blog.51cto.com/yangrong/p5 1.查看命令帮助的方法: --help 适用于一般命令,非内置命令 man 适用于 ...
- 关于立即调用的函数表达式(IIFE)
在 JavaScript 中,圆括号 () 是一种运算符,跟在函数名之后,表示调用该函数.比如,print() 就表示调用 print 函数 有时,我们需要在定义函数之后,立即调用该函数,例如: fu ...