Debugging Tools for Windows

ReadPhysical2

The ReadPhysical2 method reads the target's memory from the specified physical address.

HRESULT
  IDebugDataSpaces4::ReadPhysical2(
    IN ULONG64  Offset,
    IN ULONG  Flags,
    OUT PVOID  Buffer,
    IN ULONG  BufferSize,
    OUT OPTIONAL PULONG  BytesRead
    );

Parameters

Offset
Specifies the physical address of the memory to read.
Flags
Specifies the properties of the physical memory to be read. This must match the way the physical memory was advertised to the operating system on the target. Possible values are listed in the following table.
Value Description
DEBUG_PHYSICAL_DEFAULT Use the default memory caching.
DEBUG_PHYSICAL_CACHED The physical memory is cached.
DEBUG_PHYSICAL_UNCACHED The physical memory is uncached.
DEBUG_PHYSICAL_WRITE_COMBINED The physical memory is write-combined.

Buffer
Receives the memory that is read.
BufferSize
Specifies the size, in bytes, of the Buffer buffer. This is the maximum number of bytes that will be read.
BytesRead
Receives the number of bytes read from the target's memory. If BytesRead is NULL, this information is not returned.

Return Value

S_OK
The method was successful.

This method can also return error values. See Return Values for more details.

Interface Version

ReadPhysical2 is available in IDebugDataSpaces4 and later versions.

Comments

This method is only available in kernel-mode debugging.

The flags DEBUG_PHYSICAL_CACHED, DEBUG_PHYSICAL_UNCACHED, and DEBUG_PHYSICAL_WRITE_COMBINED can only be used when the target is a live kernel target that is being debugged in the standard way (using a COM port, 1394 bus, or named pipe).

Requirements

Headers: Defined in Dbgeng.h. Include Dbgeng.h.

See Also

ReadPhysical, WritePhysical2

Build machine: CAPEBUILD