Поделиться через


Метод IDebugRegisters2::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

Если аргумент Indexs имеет значение NULL, регистры будут считываться последовательно, начиная с этого индекса. В противном случае он игнорируется.

[out] Values

Получает значения регистров. Число элементов, удерживаемых в этом массиве, равно Числу. Описание этого типа параметра см. в DEBUG_VALUE .

Возвращаемое значение

Этот список не содержит всех ошибок, которые могут возникнуть. Список возможных ошибок см. в разделе Значения HRESULT.

Код возврата Описание
S_OK
Метод выполнен успешно.
E_UNEXPECTED
Целевой объект недоступен, или не удалось получить доступ к одному из регистров.
E_INVALIDARG
Значение индекса одного из регистров больше числа регистров на целевом компьютере. Возможно, получены частичные результаты; Регистры, которые не удалось прочитать, будут иметь тип DEBUG_VALUE_INVALID.

Комментарии

GetValues получает значение нескольких регистров целевого объекта.

Если возвращаемое значение не S_OK, возможно, некоторые регистры были прочитаны. Если целевой объект был недоступен, тип возвращаемого значения будет E_UNEXPECTED и значения не изменяются; В противном случае значения будут содержать частичные результаты, а регистры, которые не удалось прочитать, будут иметь тип DEBUG_VALUE_INVALID. Двусмысленность в случае возвращаемого значения E_UNEXPECTED можно избежать, задав для памяти Значения нулевое значение перед вызовом этого метода.

Чтобы получить значение только одного регистра, используйте вместо него метод GetValue .

Метод GetValues2 выполняет ту же задачу, что и этот метод, но также позволяет указать источник регистра.

Общие сведения об интерфейсе IDebugRegisters и других методах , связанных с регистрами, см. в разделе Registers.

Требования

Требование Значение
Целевая платформа Персональный компьютер
Верхняя часть dbgeng.h (включая DbgEng.h)

См. также раздел

GetValue

GetValues2

IDebugRegisters

IDebugRegisters2