IDebugRegisters2::SetValues 方法 (dbgeng.h)
SetValues 方法设置多个目标寄存器的值。
语法
HRESULT SetValues(
[in] ULONG Count,
[in, optional] PULONG Indices,
[in] ULONG Start,
[in] PDEBUG_VALUE Values
);
参数
[in] Count
指定要为其设置值的寄存器数。
[in, optional] Indices
指定一个数组,该数组包含要为其设置值的寄存器的索引。 此数组中的元素数为 Count。 如果 索引 为 NULL,则改用 Start 。
[in] Start
如果 Indexes 为 NULL,将从此索引开始连续设置寄存器。 否则会忽略它。
[in] Values
指定包含要设置寄存器的值的数组。 此数组包含的元素数为 Count。 有关此参数类型的说明 ,请参阅DEBUG_VALUE 。
返回值
此列表不包含可能发生的所有错误。 有关可能错误的列表,请参阅 HRESULT 值。
返回代码 | 说明 |
---|---|
|
方法成功。 |
|
无法访问目标,或者无法访问一个或多个寄存器。 |
|
一个或多个寄存器的索引值大于目标计算机上的寄存器数。 |
注解
引擎会尽力将 Values 中的值强制转换为寄存器的类型;此强制操作与 CoerceValue 执行的强制操作相同。 如果值大于寄存器可以容纳的值,则会删除最小有效位。 如有必要,还将执行浮点和整数转换。
如果未S_OK返回值,则某些寄存器可能仍已设置。
更改子注册表时,包含它的寄存器也会更改。
若要仅设置单个寄存器的值,请改用 SetValue 方法。
方法 SetValues2 执行与此方法相同的任务,但也允许指定寄存器源。
有关 IDebugRegisters 接口和其他寄存器相关方法的概述,请参阅 Registers。
要求
要求 | 值 |
---|---|
目标平台 | 桌面 |
标头 | dbgeng.h (包括 DbgEng.h) |