На главную

On-line справка по Win32 API

Написать письмо
БЕСПЛАТНАЯ ежедневная online лотерея! Выигрывай каждый день БЕСПЛАТНО!
Список всех статей A-B-C-D-E-F-G-H-I-J-K-L-M-N-O-P-Q-R-S-T-U-V-W-X-Y-Z | Скачать Вниз

VirtualQueryEx



The VirtualQueryEx function provides information about a range of pages within the virtual address space of a specified process.

DWORD VirtualQueryEx(

HANDLE hProcess, // handle of process
LPCVOID lpAddress, // address of region
PMEMORY_BASIC_INFORMATION lpBuffer, // address of information buffer
DWORD dwLength // size of buffer
);


Parameters

hProcess

Identifies the process whose memory information is queried. The handle must have PROCESS_QUERY_INFORMATION access.

lpAddress

Points to the base address of the region of pages to be queried. This value is rounded down to the next page boundary. To determine the size of a page on the host computer, use the GetSystemInfo function.

lpBuffer

Points to a MEMORY_BASIC_INFORMATION structure in which information about the specified page range is returned.

dwLength

Specifies the size, in bytes, of the buffer pointed to by the lpBuffer parameter.



Return Values

The return value is the actual number of bytes returned in the information buffer.

Remarks

VirtualQueryEx provides information about a region of consecutive pages beginning at a specified address that share the following attributes:

· The state of all pages is the same with the MEM_COMMIT, MEM_RESERVE, MEM_FREE, MEM_PRIVATE, MEM_MAPPED, or MEM_IMAGE flag.
· If the initial page is not free, all pages in the region are part of the same initial allocation of pages reserved by a call to the VirtualAlloc function.
· The access of all pages is the same with the PAGE_READONLY, PAGE_READWRITE, PAGE_NOACCESS, PAGE_WRITECOPY, PAGE_EXECUTE, PAGE_EXECUTE_READ, PAGE_EXECUTE_READWRITE, PAGE_EXECUTE_WRITECOPY, PAGE_GUARD, or PAGE_NOCACHE flag.



The VirtualQueryEx function determines the attributes of the first page in the region and then scans subsequent pages until it scans the entire range of pages, or until it encounters a page with a nonmatching set of attributes. The function returns the attributes and the size, in bytes, of the region of pages with matching attributes. For example, if there is a 40 megabyte (MB) region of free memory, and VirtualQueryEx is called on a page that is 10 MB into the region, the function will obtain a state of MEM_FREE and a size of 30 MB.

This function is identical to the VirtualQuery function, except that it enables access to information about memory in a specified process.

See Also

GetSystemInfo, MEMORY_BASIC_INFORMATION, VirtualAlloc, VirtualProtectEx, VirtualQuery


Пригласи друзей и счет твоего мобильника всегда будет положительным!
Предыдущая статья
 
Сайт Народ.Ру Интернет
Следующая статья
Пригласи друзей и счет твоего мобильника всегда будет положительным!

VirtualQueryEx



Функция VirtualQueryEx обеспечивает информацию о дипазоне страниц в пределах виртуального пространства адреса определенного процесса.

DWORD VirtualQueryEx(

РУЧКА hProcess, // ручка процесса LPCVOID lpAddress, // адреса области PMEMORY_BASIC_INFORMATION lpBuffer, // адреса информации буферизуют размер DWORD dwLength // буфера
);


Параметры

hProcess

Идентифицирует процесс, чья информация памяти спрошена. Ручка должна иметь доступ PROCESS_QUERY_INFORMATION.

lpAddress

Точки на базовый адрес области страниц, которые нужно спрашивать. Эта величина округлена в меньшую сторону на следующую страничную границу. Для того, чтобы определять размер страницы в главном компьютере, используйте функцию GetSystemInfo.

lpBuffer

Точки на структуру MEMORY_BASIC_INFORMATION в которых информация об определенном страничном дипазоне возвращана.

dwLength

Определяет размер, в байтах, буфера указанного, чтобы параметром lpBuffer.



Обратные Величины

Обратная величина является фактическим количеством байтов возвращанных в информационный буфер.

Замечания

VirtualQueryEx ОБЕСПЕЧИВАЕТ информацию об области последовательных страниц, начинаемых по определенному адресу, который распространяет следующее атрибутов:

Состояние всех страниц - то же с MEM_COMMIT, MEM_RESERVE, MEM_FREE, MEM_PRIVATE, MEM_MAPPED, или флаг MEM_IMAGE.
Если начальная страница не свободна, все страницы в области - часть того же самого начального распределения страниц зарезервированных вызовом в функцию VirtualAlloc.
Доступ всех страниц - тот же с PAGE_READONLY, PAGE_READWRITE, PAGE_NOACCESS, PAGE_WRITECOPY, PAGE_EXECUTE, PAGE_EXECUTE_READ, PAGE_EXECUTE_READWRITE, PAGE_EXECUTE_WRITECOPY, PAGE_GUARD, или флаг PAGE_NOCACHE.



Функция VirtualQueryEx определяет атрибуты сначала страница в области затем сканирует последующие страницы пока она не сканирует целый дипазон страниц, или пока это не столкнется со страницей с nonmatching установленное атрибутов. Функция возвращает атрибуты и размер, в байтах, области страниц с сопоставлением атрибутов. Например, если есть 40 мегабайтов (MB) область свободной памяти, и VirtualQueryEx посещен страница, которая - 10 MB в область, функция получит состояние MEM_FREE и размера 30 MB.

Эта функция идентична функции VirtualQuery, за исключением того это это приспосабливается доступ к информации о памяти в определенном процессе.

Смотри Также

GetSystemInfo, MEMORY_BASIC_INFORMATION, VirtualAlloc, VirtualProtectEx, VirtualQuery


Вверх Version 1.3, Oct 26 2010 © 2007, 2010, mrhx Вверх
 mrhx software  Русский перевод OpenGL  Русский перевод Win32 API
 
Используются технологии uCoz