2017-08-31 6 views
1

、遵守してください:.echo 5 + 5はWinDBGに "5 + 5"を表示します。それを10にすることは可能ですか?

0:033> .echo 5+5 
5+5 
0:033> ? 5+5 
Evaluate expression: 10 = 00000000`0000000a 
0:033> r @$t0=5+5 
0:033> r @$t0 
$t0=000000000000000a 
0:033> .echo @$t0 
@$t0 

?は私が必要なものはほとんどですが、それはあまりにも冗長です。式に.echoを呼び出す方法があるので、式の結果ではなく式のテキストが表示されますか?

答えて

1

.printfはすぐに仕事をすることがあります。あなたも周り.echoをハックすることができますもちろん

0:000> .printf "%d", 5+5 
10 

は10進数またはさえ進でそれを得るために:

0:000> .foreach /pS 2 /ps 2 (word {? 5+5}) { .echo ${word}} 
10 
0:000> .foreach /pS 4 (word {? 5+5}) { .echo ${word}} 
0000000a 

C++式の評価(??)出力は関連しているがタイプ情報を有する

0:000> ?? 5+5 
int 0n10 
2

私は無地の出力

セミコロンが必要とされているか、空白行がエイリアスは、スクリプト・ファイル内の最初のコマンド

編集可能カント設定スクリプトファイル で必要とされるが必要な場合、私は、このようなスクリプトファイルを使用しusing alias

行がasコマンドで始まる場合、その行にある別名とトークン は展開されません。 コマンドの前にセミコロンまたは空白スペースを置くと、既に値を持つエイリアスまたはトークンが展開されます。

;aS /x temp ${$arg1} ${$arg2} ${$arg3} 
.block 
{ 
    .echo ${temp} 
} 
ad * 

この

0:000> $$>a< eval.txt 5 + 5 
0xa 
0:000> $$>a< eval.txt f + f 
0x1e 
0:000> $$>a< eval.txt f + 8 
0x17 
0:000> $$>a< eval.txt 0n16 + 0n16 
0x20 
0:000> $$>a< eval.txt 0x10 + 0x10 
0x20 
0:000> $$>a< eval.txt 0x10 * 0x10 
0x100 
0:000> $$>a< eval.txt 0n10 * 0n10 
0x64 
0:000> $$>a< eval.txt 5 << 3 
0x28 
0:000> $$>a< eval.txt 5 >> 3 
0x0 
0:000> $$>a< eval.txt f >> 3 
0x1 
0:000> $$>a< eval.txt 0y101 + 0y111 
0xc 
0:000> $$>a< eval.txt 0y101 % 0y111 
0x5 
0:000> $$>a< eval.txt 0y111 % 2 
0x1 
0:000> $$>a< eval.txt 0y111 % 4 
0x3 
0:000> $$>a< eval.txt 0y111 % 0n10 
0x7 
0:000> $$>a< eval.txt 0y111/0n10 
0x0 
0:000> $$>a< eval.txt 0n2/0n10 
0x0 
0:000> $$>a< eval.txt @@c++(@$teb->ProcessEnvironmentBlock) + 18 
0x7ffd6018 
0:000> $$>a< eval.txt 5 & 1 
0x1 
0:000> $$>a< eval.txt 5 & 2 
0x0 
0:000> $$>a< eval.txt 5 & 3 
0x1 
0:000> $$>a< eval.txt 5 & 4 
0x4 
0:000> $$>a< eval.txt 5 & 5 
0x5 
0:000> $$>a< eval.txt @esp & @esp 
0x12f9a4 
0:000> $$>a< eval.txt 3 | 4 
0x7 
0:000> $$>a< eval.txt poi(@esp+c) + 0 
0x7ffd6000 
0:000> $$>a< eval.txt poi(@esp+c) + @ecx 
0x80105988 
0:000> $$>a< eval.txt @ecx + 0 
0x12f988 
0:000> $$>a< eval.txt calc + 3c 
0x1d003c 
0:000> $$>a< eval.txt poi(calc+3c) + calc 
0x1d00d8 
+0

ようにそれを使用しますが、ここでセミコロンの使用方法について説明してくださいだろうか? – golosovsky

+1

エイリアスの使用についてのmsdnドキュメントには説明があります。リンクで編集し、関連部分を見てみましょう – blabb

関連する問題