IN HANDLE SectionHandle,
IN HANDLE ProcessHandle,
IN OUT PVOID *BaseAddress OPTIONAL,
IN ULONG ZeroBits OPTIONAL,
IN ULONG CommitSize,
IN OUT PLARGE_INTEGER SectionOffset OPTIONAL,
IN OUT PULONG ViewSize,
IN InheritDisposition,
IN ULONG AllocationType OPTIONAL,
IN ULONG Protect );
Функция NtMapViewOfSection отображает заданную часть объекта "Секция" в память процесса.
SectionHandle HANDLE секции, открытый с одним или несколькими атрибутами SECTION_MAP_EXECUTE, SECTION_MAP_READ, SECTION_MAP_WRITE.
ProcessHandle
HANDLE процесса, открытый с доступом PROCESS_VM_OPERATION.
*BaseAddress
Указатель на переменную, получающую виртуальный адрес отображённой памяти.
Если это значение не равно NULL, система пытается выделить память от заданного значения.
ZeroBits
Показывает, как много старших бит не должны быть установлены в BaseAddress.
CommitSize
Размер памяти, переданной в начале, в байтах.
SectionOffset
Указатель на начало отображённого блока в секции.
Это значение должно быть округлено до размера блока X64K (0x10000 на X86).
ViewSize
Указатель на размер отображаемого блока, в байтах.
Это значение должно быть округлено до размера страницы (0x1000 на x86).
InheritDisposition
Как дочерние процессы наследуют отображаемую секцию. См. описание перечислимого типа SECTION_INHERIT.
AllocationType
Может быть:
MEM_COMMIT
MEM_RESERVE
Protect
Защита страницы. Может принимать значения: