IDebugDataSpaces3::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,则不会返回此信息。
返回值
返回代码 | 描述 |
---|---|
|
该方法成功。 BytesRead 可能小于 BufferSize,但返回了至少一个字节的数据。 |
此方法还可以返回错误值。 有关详细信息,请参阅 返回值。
言论
此方法使用目标虚拟地址空间中的内存内容填充缓冲区。
此方法可以在检索数据时引用内存数据的缓存。 如果数据是易失性的(如内存映射的硬件状态),请改用 ReadVirtualUncached。
读取包含指针的内存时,这些指针用于目标的虚拟地址空间,而不是引擎的。 例如,如果数据结构包含字符串,可能需要对此方法进行第二次调用来读取字符串的内容。
要求
要求 | 价值 |
---|---|
目标平台 | 桌面 |
标头 | dbgeng.h (包括 Dbgeng.h) |