123456

 

windbg学习------¥{} Alias Interpreter 别名解释器

Text ${Alias} Text 
Text ${/d:Alias} Text 
Text ${/f:Alias} Text 
Text ${/n:Alias} Text 
Text ${/v:Alias} Text 
Alias
指定要展开和求值的别名名称。Alias 必须是用户命名的别名或者.foreach关键字中使用的变量值

/d

   根据别名当前是否已经定义计算出1或者0。如果别名已经定义,${/d:Alias} 被替换为 1;如果别名没有定义,${/d:Alias} 被替换为 0

0:000> al
  Alias            Value  
 -------          ------- 
 $str             Tencent Technology(Shenzhen) Company Limited 
0:000> r $t0=${/d:$str}
0:000> r $t0
$t0=00000001
0:000> ad $str
0:000> al
No aliases
0:000> r $t0=${/d:$str}
0:000> r $t0
$t0=00000000

可以看到,$str存在时${/d:$str}为1,否则为0


/f

如果别名当前已定义则等同于计算别名。如果别名已经定义,${/f:Alias} 被替换为等价的别名;如果别名没有定义,${/f:Alias}被替换为空字符串

0:000> al
  Alias            Value  
 -------          ------- 
 $add             + 
0:000> ? 1 $add 2
Evaluate expression: 3 = 00000003
0:000> ? 1 ${/f:$add} 2
Evaluate expression: 3 = 00000003
0:000> ad $add
0:000> al
No aliases
0:000> ? 1 ${/f:$add} 2
Evaluate expression: 1 = 00000001
            ^ Extra character error in '? 1  2'


/n

如果别名当前已定义则计算别名的名称。如果别名已经定义,${/n:Alias}被替换为别名名称;如果别名没有定义,${/n:Alias}保留它字面上的值不替换

0:000> eza 0019e8b4 "${/n:$add}"
0:000> da 0019e8b4 
0019e8b4  "$add"
0:000> ad $add
0:000> al
No aliases
0:000> eza 0019e8b4 "${/n:$add}"
0:000> da 0019e8b4 
0019e8b4  "${/n:$add}"
可以看出,如果定义了别名,"${/n:$add}"被直接替换成$add,否则不变.

/v

禁止对任何别名求值。不论别名是否已经定义,${/v:Alias} 总是保持它字面上的值

0:000> as $add +
0:000> eza 0019e8b4 "${/v:$add}"
0:000> da 0019e8b4 
0019e8b4  "${/v:$add}"


有一个例外。如果你使用 ${/v:Alias}作为as (Set Alias)或者aS (Set Alias)命令的第一个参数,该关键字被当成单独的 Alias 字符串,而不是 ${/v:Alias}字符串。这只是对 asaSad 命令起作用

0:000> ad*
0:000> al
No aliases
0:000> as ${/v:$add} +
0:000> al
  Alias            Value  
 -------          ------- 
 $add             + 
0:000> ad ${/v:$add} 
0:000> al
No aliases



如果没有使用开关选项且别名当前已定义,${Alias} 被替换为等价的别名。如果没有使用开关选项且别名没有定义,${Alias}总是保持它字面上的值

使用 ${ } 记号的一个优点是,如果和其它字符紧挨着也会对别名求值。没有这个记号,调试器只对那些和其它关键字隔开的别名求值

0:000> eza 0019e8b4 "ab${/n:$add}"
0:000> da 0019e8b4 
0019e8b4  "ab$add"

posted on 2013-06-06 16:39  hgy413  阅读(203)  评论(0编辑  收藏  举报

导航