1

WinDbgのデフォルトでは、intは10進数で表示され、unsignedintは16進数で表示されるようです。すべてを10進数で表示する方法はありますか?

ここに記載されnているコマンドを使用してみました

ただし、構文エラーが発生します。

:086> n[10]
      ^ Syntax error in 'n[10]'

私が間違っていることは何ですか?

4

3 に答える 3

7

使用すべきでないときに角かっこを使用しているようです。MSDNページでは、基数引数がオプションであることを示すために、これらの角かっこがあります。

引数を省略した場合、現在の基数が表示されます。

0:000> n
base is 10

引数(角かっこなし)を指定すると、現在の基数が変更され、エコーバックされます。

0:000> n 16
base is 16

基数が設定された後に一般的に使用されるトリックは、?式の評価)コマンドを使用して数値を新しい基数(この例では基数16)に変換することです。

0:000> ? 0n10
Evaluate expression: 10 = 0000000a

0:000> ? 0y11
Evaluate expression: 11 = 00000003

16進数(基数16)から10進数に戻すには:

0:000> ? a
Evaluate expression: 10 = 0000000a

ベースが設定されると、入力と出力の両方が影響を受けることに注意してください。つまり、現在のベースではない数値を入力する場合は、最後の例で上で行ったようにベースを指定する必要があります。MASMのような構文で数値がどのように処理されるかについての詳細は、こちらをご覧ください

しかし、元の質問に戻ります...

はい、n 10数値を10進数で表示するのに十分なはずです。何らかの理由で問題が発生した場合は、いつでも?上記のコマンドを使用して変換を実行できます。

于 2013-03-26T01:13:13.707 に答える
2

WinDbgが式を評価する方法(nコマンドの影響の詳細を含む)を説明する拡張記事は、次の場所にあります。

https://www.osronline.com/article.cfm?id=540

于 2013-04-02T15:21:44.140 に答える
0

次のコマンドを使用してみてください:-

.enable_long_status 0

于 2015-01-22T12:10:09.737 に答える