IDebugSymbols::ReadTypedDataVirtual 方法 (dbgeng.h)

ReadTypedDataVirtual 方法读取目标虚拟内存中变量的值。

语法

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

参数

[in] Offset

指定要读取的变量的目标虚拟地址空间中的位置。

[in] Module

指定包含变量类型的模块的基址。

[in] TypeId

指定类型的类型 ID。

[out] Buffer

接收读取的数据。

[in] BufferSize

指定缓冲区 缓冲区的大小(以字节为单位)。 这是要读取的最大字节数。

[out, optional] BytesRead

接收读取的字节数。 如果 BytesReadNULL,则不会返回此信息。

返回值

返回代码 说明
S_OK
方法成功。
S_FALSE
方法成功。 但是, 缓冲区缓冲区 不够大,无法容纳所有数据,并且被截断。
 

此方法也可能返回错误值。 有关更多详细信息 ,请参阅返回值

注解

此方法尝试读取的字节数是缓冲区大小和变量大小的较小。

这是一种方便的方法。 通过调用 GetTypeSizeReadVirtual 可以获得相同的结果。

有关类型的详细信息,请参阅 类型

要求

要求
目标平台 桌面
标头 dbgeng.h (包括 Dbgeng.h)