lsf, lsf- (Load or Unload Source File)

lsf和lsf-命令加载或卸载源文件。

lsf Filename
lsf- Filename

参数:

  • Filename
    指定要加载或卸载的文件。如果此文件不在从中打开调试器的目录中,则必须包含绝对路径或相对路径。文件名必须遵循Microsoft Windows文件名惯例。

lsf命令加载源文件。lsf-命令卸载源文件。可以使用此命令卸载以前使用lsf加载的文件或自动加载的源文件。不能使用lsf-卸载通过windbg的file|open source file命令加载的文件或windbg工作区加载的文件。在cdb或kd中,可以在调试器命令窗口中查看源文件。在windbg中,源文件作为新的源窗口加载。

lsc (List Current Source)

lsc命令显示当前源文件名和行号。

lsc

lse (Launch Source Editor)

该命令打开当前源文件的编辑器。

lse

lse命令打开当前源文件的编辑器。此命令相当于在windbg的源窗口的快捷菜单中单击“编辑此文件”。发布服务器在运行目标的计算机上打开,因此您不能从远程客户端使用lse命令。windiff编辑器注册表信息或WINDBG_INVOKE_EDITOR环境变量的值决定打开哪个编辑器。例如,考虑WINDBG_INVOKE_EDITOR的以下值。

c:\my\path\myeditor.exe -file %f -line %l

此值表示myeditor.exe打开到当前源文件的基于一个行号的行。%l选项表示行号应以一个为基础读取,而%f表示应使用当前源文件。您还可以包括%l以指示行号是基于零的,或者包括%p以指示应使用当前源文件。

ls, lsa (List Source Lines)

ls和lsa命令显示来自当前源文件的一系列行,并前进当前源行号。

ls [.] [first] [, count]
lsa [.] address [, first [, count]]

参数:

  • .
    使命令查找调试器引擎或.srcpath(设置源路径)命令正在使用的源文件。如果不包括句点(.),ls将使用lsf(加载源文件)命令最近加载的文件。
  • address
    指定源显示开始的地址。
  • first
    指定要显示的第一行。默认值是当前行。
  • count
    指定要显示的行数。默认值是20(0x14),除非使用lsp-a命令更改了默认值。

运行ls或lsa命令后,当前行被重新定义为显示的最后一行加上一行。当前行用于将来的ls、lsa和lsc命令。

lsp (Set Number of Source Lines)

i s l a n d mìnglìngkāidāngqiányuánwénjiàndebiān器 。 mìnglìngxiāngdāngzài在 w i n d b g deyuánchuāngkǒudekuàijiécàidānzhōngdān击 “ biānwénjiàn件 ” 。

lsp命令控制单步执行或执行代码或使用ls和lsa命令时显示的源代码行数。

The editor is opened on the computer that the target is running on, so you cannot use the lse command from a remote client.

lsp [-a] LeadingLines TrailingLines
lsp [-a] TotalLines
lsp [-a]

参数:

  • -a
    lsp命令控制单步执行或执行代码或使用ls和lsa命令时显示的源代码行数。
  • LeadingLines
    指定要在当前行之前显示的行数。
  • TrailingLines
    指定要在当前行之后显示的行数。
  • TotalLines
    指定要显示的行总数。这个数字在前导行和尾随行之间平均分配。(如果此数字为奇数,则显示更多的尾随行。)

当您在没有参数的情况下使用lsp命令时,lsp将显示您在单步执行时使用的当前前导行和尾行值。当您仅将此命令与-a参数一起使用时,lsp将显示您在单步执行以及ls和lsa命令时使用的值。 当您单步执行程序或在程序执行后插入时,上一个lsp命令将确定显示的前导和尾随行数。使用lsa时,前一个lsp-a命令确定显示的前导和尾随行数。使用ls时,所有行都显示为一个块,因此前一个lsp-a命令确定显示的行总数。

dāngnínzàiméiyǒucānshùdeqíngkuàngxiàshǐ使 yòng用 l s p mìnglìngshí时 , l s p jiāngxiǎnshìnínzàidānzhíxíngshíshǐ使 yòngdedāngqiánqiándǎohángwěixíngzhí值 。 dāngnínjǐnjiāngmìnglìng与 - a cānshùshǐ使 yòngshí时 , l s p jiāngxiǎnshìnínzàidānzhíxíng及 l s 和 l s a mìnglìngshíshǐ使 yòngdezhí值 。

.open (Open Source File)

When you step through a program or break in after program execution, the previous lsp command determines the number of leading and trailing lines that are displayed. When you use lsa, the previous lsp -a command determines the number of leading and trailing lines that are displayed. When you use ls, all lines appear as a single block, so the previous lsp -a command determines the total number of lines that are displayed.

.open命令搜索源文件的源路径并打开此文件。

.open [-m Address] FileName
.open -a Address

参数:

  • FileName
    指定源文件名。此名称可以包含绝对路径或相对路径。除非指定绝对路径,否则该路径将被解释为相对于源路径中的目录。
  • -m Address
    指定源文件中的地址。此地址必须包含在已知模块中。如果filename指定的文件不唯一,则应使用-m address参数。 如果使用源服务器检索源文件,则需要-m参数。
  • -a Address
    指定源文件中的地址。此地址必须包含在已知模块中。如果调试器可以找到源文件,则调试器将加载并打开该文件,并突出显示与指定地址对应的行。如果调试器找不到源文件,则地址将显示在“反汇编”窗口中。

.srcpath, .lsrcpath (Set Source Path)

.srcpath和.lsrcpath命令设置或显示源文件搜索路径。

.srcpath[+] [Directory [; ...]]
.lsrcpath[+] [Directory [; ...]]

参数:

  • +
    指定新目录将附加到(而不是替换)上一个源文件搜索路径。
  • Directory
    指定要放入搜索路径中的一个或多个目录。如果未指定目录,则显示当前路径。用分号分隔多个目录。

.srcpath命令在所有调试器上都可用。.lsrcpath命令仅在windbg中可用,不能在脚本文件中使用。如果源路径中包含srv*,调试器将使用srcsrv从目标模块符号文件中指定的位置检索源文件。从调试客户端发出此命令时,.srcpath设置调试服务器上的源路径,.lsrcpath设置本地计算机上的源路径。

.srcfix, .lsrcfix (Use Source Server)

.srcfix和.lsrcfix命令自动设置源路径,以指示将使用源服务器。

.srcfix[+] [Paths]
.lsrcfix[+] [Paths]

参数:

  • +
    使现有源路径保持不变,并将srv*追加到末尾。如果未使用+号,则替换现有源路径。
  • Paths
    指定要附加到新源路径末尾的一个或多个附加路径。

.srcfix命令在所有调试器上都可用。.lsrcfix命令仅在windbg中可用,不能在脚本文件中使用。将srv*添加到源路径时,调试器使用srcsrv从目标模块符号文件中指定的位置检索源文件。在源路径中使用srv*与在符号路径中使用srv*有本质的不同。在符号路径中,可以指定符号服务器位置以及srv*(例如,.sympath srv*http://msdl.microsoft.com/download/symbols)。在源路径中,srv*是独立的,用分号与所有其他元素分隔开。从调试客户端发出此命令时,.srcfix将源路径设置为使用调试服务器上的源服务器,而.lsrcfix在本地计算机上执行相同的操作。这些命令与.srcpath(set source path)和.lsrcpath(set local source path)命令相同,后面跟着srv*source path元素。因此,以下两个命令是等效的:

.srcfix[+] [Paths]
.srcpath[+] srv*[;Paths]

类似地,以下两个命令是等效的:

jiàng将 s r v * tiānjiādàoyuánjìngshí时 , tiáoshìshǐ使 yòng用 s r c s r v cóngbiāokuàihàowénjiànzhōngzhǐdìngdewèizhijiǎnsuǒyuánwénjiàn件 。 zàiyuánjìngzhōngshǐ使 yòng用 s r v * zàihàojìngzhōngshǐ使 yòng用 s r v * yǒuběnzhìdetóng同 。 zàihàojìngzhōng中 , zhǐdìnghàowèizhi及 s r v * ( 如 , . s y m p a t h s r v * h t t p : / / m s d l . m i c r o s o f t . c o m / d o w n l o a d / s y m b o l s ) 。 zàiyuánjìngzhōng中 , s r v * shìde的 , yòngfēnhàosuǒyǒuyuánfēnkāi开 。

.lsrcfix[+] [Paths]
.lsrcpath[+] srv*[;Paths]

.srcnoisy (Noisy Source Loading)

When this command is issued from a debugging client, .srcfix sets the source path to use a source server on the debugging server, while .lsrcfix does the same on the local machine.

.srcnoisy命令控制源文件加载的详细级别。

.srcnoisy [Options]

参数:

  • Options
    可以是以下任一选项:
    0
    禁止显示多出的信息。

    1
    显示源文件加载和卸载的进度有关的信息。

    2
    显示的符号文件加载和卸载进度有关的信息。

    3
    显示通过选项 1 和 2 显示的所有信息。

cóngtiáoshìduānchūmìnglìngshí时 , . s r c f i x jiāngyuánjìngshèzhìwéishǐ使 yòngtiáoshìshàngdeyuán器 , ér而 . l s r c f i x zàiběnsuànshàngzhíxíngxiāngtóngdecāozuò作 。

These commands are the same as the .srcpath (Set Source Path) and .lsrcpath (Set Local Source Path) commands followed by the srv* source path element. Thus, the following two commands are equivalent:

如果没有参数,.srcnoisy将显示噪声源加载的当前状态。噪声源加载不应与噪声符号加载混淆--噪声符号加载由控制!sym noise扩展和通过其他方式控制symopt_调试设置。

WinDbg常用命令系列---源代码操作相关命令的更多相关文章

  1. WinDbg常用命令系列---日志操作相关命令log*

    .logopen (Open Log File) .logopen命令将事件和命令的副本从调试器命令窗口发送到新的日志文件. .logopen [Options] [FileName] .logope ...

  2. IDEA环境下GIT操作浅析之二-idea下分支操作相关命令

    上次写到<idea下仓库初始化与文件提交涉及到的基本命令>,今天我们继续写IDEA环境下GIT操作之二--idea下分支操作相关命令以及分支创建与合并. 1.idea 下分支操作相关命令 ...

  3. Linux中mod相关的命令 内核模块化 mod相关命令都是用来动态加载内核模块/驱动程序模块

    Linux中mod相关的命令 内核模块化   mod相关命令都是用来动态加载内核模块/驱动程序模块 http://baike.baidu.com/link?url=lxiKxFvYm-UfJIxMjz ...

  4. linux 常用文本操作相关命令

    平时工作经常会对文本进行相关操作,包括读写.替换.统计等等,借此整理和学习一下有关命令. 1. cat 查看文件中的内容, -n 查看时为每一行加编号; -b 和-n类似,只不过对于空白行不编号: 2 ...

  5. Redis常用命令手册:服务器相关命令

    Redis提供了丰富的命令(command)对数据库和各种数据类型进行操作,这些command可以在Linux终端使用.在编程时,比如各类语言包,这些命令都有对应的方法.下面将Redis提供的命令做一 ...

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

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

  7. redis入门指南(二)—— 数据操作相关命令

    写在前面 以下绝大部分内容取材于<redis入门指南>,部分结合个人知识,实践后得出. 只记录重要,明确,属于新知的相关内容,杜绝冗余和重复. 字符串 1.字符串类型是redis中最常见的 ...

  8. 『学了就忘』Linux基础命令 — 27、搜索操作相关命令

    目录 1.whereis命令 2.which命令 3.locate命令 1.whereis命令 whereis是搜索系统命令的命令,也就是说,whereis命令不能搜索普通文件,而只能搜索系统命令. ...

  9. 全网最详细的Linux命令系列-Screen远程会话命令

    screen 管理你的远程会话 你是不是经常需要 SSH 或者 telent 远程登录到 Linux 服务器?你是不是经常为一些长时间运行的任务而头疼,比如系统备份.ftp 传输等等.通常情况下我们都 ...

随机推荐

  1. HTTP响应状态

    状态码分类 状态码详解 状态码 英文提示 说明 100 Continue 继续 101 Switching Protocols 切换协议.服务器根据客户端的请求切换协议.只能切换到更高级的协议,例如, ...

  2. Maven聚合项目的创建

    1.项目结构如下 步骤如下: 点击Finish 这里父项目需要加入如下的构建依赖: <dependencyManagement> <dependencies> <depe ...

  3. 《JAVA高并发编程详解》-并发编程有三个至关重要的特性:原子性,有序性,可见性

  4. c# sharepoint client object model 客户端如何创建中英文站点

    c# sharepoint client object model 客户端如何创建中英文站点 ClientContext ClientValidate = tools.GetContext(Onlin ...

  5. Python进阶----进程间数据隔离, join阻塞等待, 进程属性, 僵尸进程和孤儿进程, 守护进程

    Python进阶----进程间数据隔离, join阻塞等待, 进程属性, 僵尸进程和孤儿进程, 守护进程 一丶获取进程以及父进程的pid 含义:    进程在内存中开启多个,操作系统如何区分这些进程, ...

  6. BFC特性及其简单应用

    BFC是什么? BFC(Block Formatting Context)中文直译就是‘块级格式上下文’,它是 W3C CSS 2.1 规范中的一个概念,它决定了元素如何对其内容进行定位,以及与其他元 ...

  7. html 随机验证码

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. CSS3扇形进度效果

    .coutdown-animate {     position: absolute;     top: 0;     left: 0;     right: 0;     bottom: 0;    ...

  9. iManager微服务自定义上传数据的两种方法

    背景 当数据量大时,通过浏览器上传可能速度较慢,可以使用以下两种方式进行数据导入. 方法一 1.访问k8s主页(31234端口) 找到所创建的微服务的命名空间(例如icloud-native-xxx) ...

  10. 基于cmake编译glew

    cmake已经成为了C/C++开源项目的主流构建工具.glew也提供了cmake的脚本,但用cmake编译glew容易采坑:glew的github上的代码,无论是master分支还是glew-2.1. ...