This is retired content. This content is outdated and is no
longer being maintained. It is provided as a courtesy for
individuals who are still using these technologies. This content
may contain URLs that were valid when originally published, but now
link to sites or pages that no longer exist.
This structure contains information about a range of pages in
the virtual address space of a process. The
VirtualQueryfunction uses
this structure.
Pointer to the base address of the region of pages.
AllocationBase
Pointer to the base address of a range of pages allocated by
the
VirtualAllocfunction. The
page pointed to by the
BaseAddressmember is contained within this allocation range.
AllocationProtect
Specifies the access protection given when the region was
initially allocated. One of the flags listed in the following table
can be present, along with the PAGE_GUARD and PAGE_NOCACHE
protection modifier flags.
Value
Description
PAGE_READONLY
Enables read access to the committed region of
pages. An attempt to write to the committed region results in an
access violation. If the system differentiates between read-only
access and execute access, an attempt to execute code in the
committed region results in an access violation.
PAGE_READWRITE
Enables both read and write access to the committed
region of pages.
PAGE_WRITECOPY
Gives copy-on-write access to the committed region
of pages.
PAGE_EXECUTE
Enables execute access to the committed region of
pages. An attempt to read or write to the committed region results
in an access violation.
PAGE_EXECUTE_READ
Enables execute and read access to the committed
region of pages. An attempt to write to the committed region
results in an access violation.
PAGE_EXECUTE_READWRITE
Enables execute, read, and write access to the
committed region of pages.
PAGE_EXECUTE_WRITECOPY
Enables execute, read, and write access to the
committed region of pages. The pages are shared read-on-write and
copy-on-write.
PAGE_GUARD
Protects the page with the underlying page
protection. However, access to the region causes a "guard page
entered" condition to be raised in the subject process. This flag
is a page protection modifier and is only valid when used with one
of the page protections other than PAGE_NOACCESS.
PAGE_NOACCESS
Disables all access to the committed region of
pages. An attempt to read from, write to, or execute in the
committed region results in an access violation exception, called a
general protection (GP) fault.
PAGE_NOCACHE
Allows no caching of the committed regions of
pages. The hardware attributes for the physical memory should be
set to no cache. This is not recommended for general usage. It is
useful for device drivers; for example, mapping a video frame
buffer with no caching. This flag is a page protection modifier and
is only valid when used with one of the page protections other than
PAGE_NOACCESS.
RegionSize
Specifies the size, in bytes, of the region beginning at the
base address in which all pages have identical attributes.
State
Specifies the state of the pages in the region. One of the
values in the following table is indicated.
Value
Description
MEM_COMMIT
Indicates committed pages for which physical
storage has been allocated, either in memory or in the paging file
on disk.
MEM_FREE
Indicates free pages not accessible to the calling
process and available to be allocated. For free pages, the
information in the
AllocationBase,
AllocationProtect,
Protect, and
Typemembers is undefined.
MEM_RESERVE
Indicates reserved pages where a range of the
process's virtual address space is reserved without any physical
storage being allocated. For reserved pages, the information in the
Protectmember is undefined.
Protect
Specifies the access protection of the pages in the region. One
of the flags listed for the
AllocationProtectmember is specified.
Type
Specifies the type of pages in the region. The following table
lists the values for this parameter.
Value
Description
MEM_IMAGE
Indicates that the memory pages within the region
are mapped into the view of an image section.
MEM_MAPPED
Indicates that the memory pages within the region
are mapped into the view of a section.
MEM_PRIVATE
Indicates that the memory pages within the region
are private (that is, not shared by other processes).
Requirements
Runs on
Versions
Defined in
Include
Link to
Windows CE OS
1.0 and later
Winnt.h
Note This API is part of the
complete Windows CE OS package as provided by Microsoft. The
functionality of a particular platform is determined by the
original equipment manufacturer (OEM) and some devices may not
support this API.