SetValues2 方法设置目标 寄存器的几个值。
语法
HRESULT SetValues2(
  [in]           ULONG        Source,
  [in]           ULONG        Count,
  [in, optional] PULONG       Indices,
  [in]           ULONG        Start,
  [in]           PDEBUG_VALUE Values
);
参数
[in] Source
指定要查询的注册源。
下表列出了可能的值。
| 价值 | 注册源 | 
|---|---|
| DEBUG_REGSRC_DEBUGGEE | 从目标中提取注册信息。 | 
| DEBUG_REGSRC_EXPLICIT | 从当前显式 寄存器上下文提取寄存器信息。 | 
| DEBUG_REGSRC_FRAME | 
从当前范围的注册上下文中提取注册信息。
 
              注意 Stack 展开不能保证寄存器上下文的准确更新,因此范围框架的寄存器上下文在所有情况下都可能不准确。 
 | 
[in] Count
指定要为其设置值的寄存器数。
[in, optional] Indices
指定一个数组,其中包含要为其设置值的寄存器的索引。 此数组中的元素数 计数。 如果 索引NULL,则改用 Start。
[in] Start
如果 索引NULL,将从此索引处开始连续设置寄存器。 否则,将忽略它。
[in] Values
一个数组,其中包含要设置寄存器的值。 此数组保存的元素数 计数。 有关此参数类型的说明,请参阅 DEBUG_VALUE。
返回值
此列表不包含可能发生的所有错误。 有关可能的错误的列表,请参阅 HRESULT 值。
| 返回代码 | 描述 | 
|---|---|
  | 
该方法成功。 | 
言论
引擎尽最大努力将 值 的值转换为寄存器的类型;此转换与 CoerceValue执行的作相同。 如果该值大于寄存器可以容纳的值,则会删除最小有效位。 如有必要,还将执行浮点转换和整数转换。
如果未S_OK返回值,则某些寄存器仍可能已设置。
更改子注册时,也会更改包含它的寄存器。
SetValues 的方法执行与此方法相同的任务,但始终使用目标作为注册源。
有关 IDebugRegisters 接口和其他与注册相关的方法的概述,请参阅 寄存器。
要求
| 要求 | 价值 | 
|---|---|
| 目标平台 | 桌面 | 
| 标头 | dbgeng.h (包括 DbgEng.h) |