(dbgeng.h) IDebugRegisters2::SetValues 方法

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

如果 索引NULL,則會從這個索引開始連續設定緩存器。 否則會忽略它。

[in] Values

指定要設定快取器之值的陣列。 這個陣列保留的項目數目為 Count。 如需此參數類型的描述 ,請參閱DEBUG_VALUE

傳回值

此清單不包含可能發生的所有錯誤。 如需可能的錯誤清單,請參閱 HRESULT 值

傳回碼 描述
S_OK
此方法成功。
E_UNEXPECTED
無法存取目標,或無法存取一或多個緩存器。
E_INVALIDARG
一或多個緩存器的索引值大於目標計算機上的緩存器數目。

備註

引擎會盡最大努力將 Values 中的值強制轉型為緩存器的類型;這個強制型轉與 CoerceValue 所執行的相同。 如果值大於緩存器可以保留的值,則會捨棄最小有效位。 如有必要,也會執行浮點和整數轉換。

如果傳回值未S_OK,可能仍可能已設定部分緩存器。

更改子登錄時,也會變更包含它的緩存器。

若要只設定單一緩存器的值,請改用 SetValue 方法。

SetValues2 方法會執行與此方法相同的工作,但也允許指定緩存器來源。

如需 IDebugRegisters 介面和其他緩存器相關方法的概觀,請參閱 Registers

規格需求

需求
目標平台 桌面
標頭 dbgeng.h (包含 DbgEng.h)

另請參閱

IDebugRegisters

IDebugRegisters2

SetValue

SetValues2