zoukankan      html  css  js  c++  java
  • windbg学习 gc j(Execute IfElse).if

    当一个条件断点的末尾包含一个执行命令时,需要使用gc命令

    例如,如果使用g (Go)命令来到达该断点,则恢复为自由执行。但是如果使用单步或跟踪来到达该断点,也会以单步或跟踪的方式来恢复执行


    j Expression Command1 ; Command2
    j Expression 'Command1' ; 'Command2' 

    Expression
    要求值的表达式。如果表达式的值是非0值,则执行Command1 。如果表达式的值为0,则执行Command2
    Command1
    Expression 为非0值(TRUE)时要执行的命令字符串。可以通过在命令字符串两边加上单引号( ' ),并且以分号来分隔各个命令来一次使用多条命令。如果命令字符串是单条命令,单引号是可选的。 
    Command2

    Expression 值为0(FALSE)时要执行的命令字符串。可以通过在命令字符串两边加上单引号( ' ),并且以分号来分隔各个命令来一次使用多条命令。如果命令字符串是单条命令,单引号是可选的。

    cx=fb08
    0:000> j (eax!=0) r eax; r bx
    bx=0
    0:000> j (eax!=0) r eax; r bx; r cx
    bx=0
    0:000> j (eax!=0) r eax; 'r bx; r cx'
    bx=0
    cx=fb08
    可以看到第二条由于没有单引号,所以后面的被忽略了!


    .if关键字的行为和C中的if类似

    .if (Condition) { Commands 

    .if (
    Condition) { Commands } .else { Commands 

    .if (
    Condition) { Commands } .elsif (Condition) { Commands 

    .if (
    Condition) { Commands } .elsif (Condition) { Commands } .else { Commands } 

    0:000> .if (eax>ebx){r eax}.else{r ebx; r ecx}
    ebx=00000000
    ecx=001dfad0



  • 相关阅读:
    Linux_WEB访问控制示例(使用IPADDR类型)
    基于多IP地址Web服务
    基于多端口的Web服务
    基于多主机的Web服务
    Linux_WEB服务基础概念
    Linux_配置认证访问FTP服务
    Linux_配置匿名访问FTP服务
    Linux_部署日志服务器
    Linux_日志管理理论概述
    微信小程序 radio 单选框
  • 原文地址:https://www.cnblogs.com/hgy413/p/3693417.html
Copyright © 2011-2022 走看看