在中使用$t0值!eb windbg命令写入物理内存

在中使用$t0值!eb windbg命令写入物理内存,windbg,Windbg,我正在编写一个WinDbg脚本来编写一些物理内存,在内核调试模式下运行它,使用!指挥部 !!当我使用给定值手动运行ed时,它工作正常,例如!ed 9182f084 8 我现在想在一个脚本中运行它,其中要写入的值来自一个伪寄存器。但以下措施不起作用: r $t0=8 !ed 9182f084 @$t0 我不太清楚它在这个例子中写的是什么值,但很明显,它不是我所希望的整数值8 谢谢你的提示 对我也不起作用。它看起来像是一只猫!ed命令正在错误地分析参数。您可以指定完全无效的内容,它只是默默地忽略该

我正在编写一个WinDbg脚本来编写一些物理内存,在内核调试模式下运行它,使用!指挥部

!!当我使用给定值手动运行ed时,它工作正常,例如
!ed 9182f084 8

我现在想在一个脚本中运行它,其中要写入的值来自一个伪寄存器。但以下措施不起作用:

r $t0=8
!ed 9182f084 @$t0
我不太清楚它在这个例子中写的是什么值,但很明显,它不是我所希望的整数值8


谢谢你的提示

对我也不起作用。它看起来像是一只猫!ed命令正在错误地分析参数。您可以指定完全无效的内容,它只是默默地忽略该命令。例如,我甚至没有发现以下错误:

kd> !ed 4318b20 XYZ
除了写你自己的版本!ed,我能想到的唯一办法就是使用别名:

kd> r @$t0 = 8
kd> as /x ${/v:t0Val} @$t0
kd> !ed 4318b20 ${t0Val}
kd> !dd 4318b20 L1
# 4318b20 00000008
指定“8”的方式非常荒谬,但如果您试图将其放入脚本中,它是有效的