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


Метод IDebugDataSpaces::ReadVirtual (dbgeng.h)

Метод ReadVirtual считывает память из виртуального адресного пространства целевого объекта.

Синтаксис

HRESULT ReadVirtual(
  [in]            ULONG64 Offset,
  [out]           PVOID   Buffer,
  [in]            ULONG   BufferSize,
  [out, optional] PULONG  BytesRead
);

Параметры

[in] Offset

Указывает расположение в виртуальном адресном пространстве целевого объекта для чтения.

[out] Buffer

Указывает буфер для чтения памяти в.

[in] BufferSize

Задает размер буфера в байтах. Это также число запрашиваемых байтов.

[out, optional] BytesRead

Получает количество байтов, которые были прочитаны. Если для него задано значение NULL, эти сведения не возвращаются.

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

Возвращаемый код Описание
S_OK
Метод был успешным. Возможно, BytesRead меньше BufferSize, но возвращен по крайней мере один байт данных.
 

Этот метод также может возвращать значения ошибок. Дополнительные сведения см. в возвращаемых значений.

Замечания

Этот метод заполняет буфер содержимым памяти в виртуальном адресном пространстве целевого объекта.

Этот метод может ссылать на кэш данных памяти при получении данных. Если данные являются переменными, например состояние оборудования, сопоставленного с памятью, используйте вместо этого ReadVirtualUncached.

При чтении памяти, содержащей указатели, эти указатели предназначены для виртуального адресного пространства целевого объекта, а не подсистемы. Например, если структура данных содержит строку, для чтения содержимого строки может потребоваться второй вызов этого метода.

Требования

Требование Ценность
целевая платформа Настольный
заголовка dbgeng.h (include Dbgeng.h)

См. также

IDebugDataSpaces

IDebugDataSpaces2

IDebugDataSpaces3

IDebugDataSpaces4

ReadVirtualUncached

WriteVirtual