query_memory_extended


ulong query_memory_extended(handle process,
                            void* address,
                            memory_information* buffer,
                            ulong length)

This function obtains information about a range of pages in the virtual address space of the specified process.

Parameters

handle process

The handle of the process whose virtual address space is being queried.

void* address

A pointer to the address starting the range of pages for which information is required. This value is rounded down the ensure it is on a page boundary.

memory_information* buffer

A pointer to a buffer to hold the requested information.

ulong length

The size of the buffer pointed to by the previous parameter.

Return

ulong

The number of bytes transferred to the buffer.

Notes

The calling process must have opened the target process with access process_access::read_virtual_machine.

The information returned is for a range of pages that share the following properties.

  1. The pages have the same values for the flags:

  2. If the initial page is not free, the pages form part of the same virtual memory allocation.

  3. The pages share the same access flags.