IDebugDataSpaces2::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) |