e、ea、eb、ed、eD、ef、ep、eq、eu、ew、eza (値の入力)
*e*
コマンドは、指定した値をメモリに入力します。
このコマンドを ~E (スレッド固有コマンド) 修飾子と混同しないでください。
e{b|d|D|f|p|q|w} Address [Values]
e{a|u|za|zu} Address "String"
e Address [Values]
カーネル モードのみ - 物理アドレス
/p {[c]|[uc]|[wc]}
詳細については、このトピックで後述する「カーネル モードの物理アドレス」を参照してください。
パラメーター
構文
Address
値を入力する開始アドレスを指定します。 デバッガーは、Address から始めて、すべての Values が使用されるまで、アドレスの値と後続の各メモリ位置の値とを置き換えます。
Values
メモリに入力する値を 1 つ以上指定します。 複数の数値はスペースで区切る必要があります。 値を指定しない場合は、現在のアドレスとそのアドレスの値が表示され、値の入力を求められます。
String
メモリに入力する文字列を指定します。 ea および eza コマンドは、この文字列を ASCII 文字列としてメモリに書き込みます。eu および ezu コマンドは、この文字列を Unicode 文字列としてメモリに書き込みます。 eza および ezu コマンドは終端の NULL を書き込みます。ea および eu コマンドは書き込みません。 String は引用符で囲む必要があります。
Environment
項目 | 説明 |
---|---|
モード | ユーザー モード、カーネル モード |
対象 | ライブ、クラッシュ ダンプ |
プラットフォーム | すべて |
追加情報
メモリ操作の概要とその他のメモリ関連のコマンドの説明については、「メモリの読み取りと書き込み」を参照してください。
解説
このコマンドは、次の形式で使用します。 ed および eD コマンドの 2 番目の文字では大文字と小文字が区別されます。
command | Enter |
---|---|
e |
これにより、直近の e コマンドと同じ書式でデータが入力されます。 (直近の e コマンドが ea、eza、eu、または ezu だった場合、最後のパラメーターは String となり、省略することはできません。) |
ea |
ASCII 文字列 (null 終端ではない)。 |
eb |
バイト値。 |
ed |
ダブルワード値 (4 バイト)。 |
eD |
倍精度浮動小数点数 (8 バイト)。 |
ef |
単精度浮動小数点数 (4 バイト)。 |
ep |
ポインター サイズの値。 このコマンドは、ターゲット コンピューターのプロセッサ アーキテクチャが 32 ビットか 64 ビットかに応じて、それぞれ ed または eq に相当します。 |
eq |
クワッドワード値 (8 バイト)。 |
eu |
Unicode 文字列 (null 終端ではない)。 |
ew |
ワード値 (2 バイト)。 |
eza |
ASCII 文字列 (null 終端)。 |
ezu |
Unicode 文字列 (null 終端)。 |
数値は現在の基数 (16、10、または 8) の数値として解釈されます。 デフォルトの基数を変更するには、n (Set Number Base)コマンドを使用する。 既定の基数は、 0x プレフィックス (16 進数)、 0n プレフィックス (10 進数)、 0t プレフィックス (8 進数)、または 0y プレフィックス (2 進数) を指定することで上書きできます。
注 C++ 式の使用時は既定の基数の振る舞いが異なります。 詳細については、「式の評価」を参照してください。
eb コマンドでバイト値を入力するときは、一重引用符を使用して文字を指定できます。 複数の文字を含める場合は、各文字をそれぞれ引用符で囲む必要があります。 これにより、null 文字で終端しない文字列を入力できます。 次に例を示します。
eb 'h' 'e' 'l' 'l' 'o'
C スタイルのエスケープ文字 (\\0
や \\n
など) は、これらのコマンドでは使用できません。
Values パラメーターを省略すると、入力を求めるプロンプトが表示されます。 アドレスとその現在の内容が表示され、Input> プロンプトが表示されます。 次のいずれかの操作を実行できます。
値を入力して Enter キーを押すことで、新しい値を入力する。
Space を押した後に Enter キーを押すことで、現在の値をメモリに保存する。
Enter キーを押すことで、コマンドを終了する。
カーネル モードの物理アドレス
WinDbg のバージョン 1.2402.24001.0 以降では、e
(メモリ入力) コマンドは d、da、db、dc、dd、dD、df、dp、dq、du、dw、dW、dyb、dyd (メモリの表示) と同様に物理アドレスをサポートしています。 これらのオプションはカーネル モードでのみサポートされています。
オプション | 説明 |
---|---|
/p |
表示には物理メモリ アドレスを使用します。 Range で指定した範囲は、仮想メモリではなく物理メモリから取得されます。 |
/p[c] |
/p と同じですが、キャッシュされたメモリが読み取られる点が異なります。 c を角かっこで囲む必要があります。 |
/p[uc] |
/p と同じですが、キャッシュされていないメモリが読み取られる点が異なります。 uc を角かっこで囲む必要があります。 |
/p[wc] |
/p と同じですが、書き込み結合メモリが読み取られる点が異なります。 wc を角かっこで囲む必要があります。 |