IDebugRegisters::GetValues 方法 (dbgeng.h)
GetValues 方法會取得目標 快取器的數個值。
語法
HRESULT GetValues(
[in] ULONG Count,
[in, optional] PULONG Indices,
[in] ULONG Start,
[out] PDEBUG_VALUE Values
);
參數
[in] Count
指定要求其值的緩存器數目。
[in, optional] Indices
指定陣列,其中包含要從中取得值的緩存器索引。 此陣列中的元素數目 Count。 如果 索引NULL,則會改用 Start。
[in] Start
如果 索引NULL,則會從此索引開始連續讀取緩存器。 否則會忽略它。
[out] Values
接收快取器的值。 這個陣列保留的項目數目是 Count。 如需此參數類型的描述,請參閱 DEBUG_VALUE。
傳回值
此清單不包含可能發生的所有錯誤。 如需可能的錯誤清單,請參閱 HRESULT 值。
傳回碼 | 描述 |
---|---|
|
方法成功。 |
|
無法存取目標,或無法存取其中一個緩存器。 |
|
其中一個緩存器之索引的值大於目標電腦上的緩存器數目。 可能已取得部分結果;無法讀取的緩存器會有類型DEBUG_VALUE_INVALID。 |
言論
GetValues 取得目標的數個緩存器值。
如果傳回值未S_OK,部分緩存器仍可能已讀取。 如果無法存取目標,則會E_UNEXPECTED傳回類型,且 值 不變;否則,值 將包含部分結果,而且無法讀取的緩存器會有類型DEBUG_VALUE_INVALID。 在傳回值E_UNEXPECTED的情況下,可以避免模棱兩可,方法是先將 Values 的記憶體設定為零,再呼叫此方法。
若要只接收單一緩存器的值,請改用 GetValue 方法。
GetValues2 方法會執行與此方法相同的工作,但也允許指定緩存器來源。
如需 IDebugRegisters 介面和其他註冊相關方法的概觀,請參閱 Registers。
要求
要求 | 價值 |
---|---|
目標平臺 | 桌面 |
標頭 | dbgeng.h (include DbgEng.h) |