Синтаксис Delphi
type
PMemoryBasicInformation = ^TMemoryBasicInformation;
_MEMORY_BASIC_INFORMATION = record
BaseAddress : Pointer;
AllocationBase : Pointer;
AllocationProtect : DWORD;
RegionSize : DWORD;
State : DWORD;
Protect : DWORD;
Type_9 : DWORD;
end;
{$EXTERNALSYM _MEMORY_BASIC_INFORMATION}
TMemoryBasicInformation = _MEMORY_BASIC_INFORMATION;
MEMORY_BASIC_INFORMATION = _MEMORY_BASIC_INFORMATION;
{$EXTERNALSYM MEMORY_BASIC_INFORMATION}
Члены
- BaseAddress
- Указатель на базовый адрес региона страниц.
- AllocationBase
- Указатель на базовый адрес диапазона страниц ассигнован функцией VirtualAlloc. Страница, на которую указывает член BaseAddress, содержится в пределах этого диапазона распределения.
- AllocationProtect
- Выбор защиты памяти, когда область была первоначально ассигнована. Этот участник может быть одной из констант защиты памяти или 0, если у гостя нет доступа.
- RegionSize
- Размер в регионе, начиная с базового адреса, в которой все страницы имеют идентичные атрибуты, в байтах.
- State
- Состояние страницы в регионе. Этот член может быть одним из следующих значений.
Состояние Смысл
- MEM_COMMIT
- 0x1000
Указывает на фиксированные страницы, для которых физическое хранение было выделено, или в памяти или в страничном файле на диске.
- MEM_FREE
- 0x10000
Указывает свободных страниц, не доступных для вызывающего процесса и которые будут выделены. Для свободных страниц информация в AllocationBase, AllocationProtect, Protect, тип и элементы не определены.
- MEM_RESERVE
- 0x2000
Указывает на зарезервированные страницы, где диапазон виртуального адресного пространства процесса зарезервирован без любого физического выделяемого хранения. Для зарезервированных страниц информация в элементе защита не определена.
- Protect
- Защита доступа страницы в регионе. Этот член является одним из значений, перечисленных для элемента AllocationProtect.
- Type
- Тип страниц в регионе. Определены следующие типы.
Тип Смысл
- MEM_IMAGE
- 0x1000000
Указывает, что страницы памяти в пределах региона сопоставляются в представление изображения раздела.
- MEM_MAPPED
- 0x40000
Указывает, что страницы памяти в пределах региона сопоставляются в представление раздела.
- MEM_PRIVATE
- 0x20000
Указывает на страницах памяти в пределах частного региона (что не разделяется другими процессами).
Чтобы позволить отладчику отладить цель, которая используется на различной архитектуре (32-битовый против 64-битового), используйте одну из явных форм этой структуры.
Копия
typedef struct _MEMORY_BASIC_INFORMATION32 { DWORD BaseAddress; DWORD AllocationBase; DWORD AllocationProtect; DWORD RegionSize; DWORD State; DWORD Protect; DWORD Type; } MEMORY_BASIC_INFORMATION32, *PMEMORY_BASIC_INFORMATION32; typedef struct DECLSPEC_ALIGN(16) _MEMORY_BASIC_INFORMATION64 { ULONGLONG BaseAddress; ULONGLONG AllocationBase; DWORD AllocationProtect; DWORD __alignment1; ULONGLONG RegionSize; DWORD State; DWORD Protect; DWORD Type; DWORD __alignment2; } MEMORY_BASIC_INFORMATION64, *PMEMORY_BASIC_INFORMATION64;
Требования
Минимальная поддерживаемая клиента | Windows 2000 Professional |
---|---|
Минимальный поддерживаемый сервер | Windows 2000 Server |
Заголовок | Windows.pas |
Комментариев нет:
Отправить комментарий