WIN32_MEMORY_REGION_INFORMATION結構 (memoryapi.h)
包含記憶體區域的相關資訊。 記憶體區域是使用記憶體配置函式建立的單一配置,例如 VirtualAlloc 或 MapViewOfFile。
語法
typedef struct WIN32_MEMORY_REGION_INFORMATION {
PVOID AllocationBase;
ULONG AllocationProtect;
union {
ULONG Flags;
struct {
ULONG Private : 1;
ULONG MappedDataFile : 1;
ULONG MappedImage : 1;
ULONG MappedPageFile : 1;
ULONG MappedPhysical : 1;
ULONG DirectMapped : 1;
ULONG Reserved : 26;
} DUMMYSTRUCTNAME;
} DUMMYUNIONNAME;
SIZE_T RegionSize;
SIZE_T CommitSize;
} WIN32_MEMORY_REGION_INFORMATION;
成員
AllocationBase
配置的基底位址。
AllocationProtect
建立配置時所指定的頁面保護值。 配置內個別頁面的保護可能會與此值不同。 若要查詢個別頁面的保護值,請使用 VirtualQuery 函式。
DUMMYUNIONNAME
DUMMYUNIONNAME.Flags
將所有記憶體區域旗標表示為單一 ULONG 值。 應用程式不應該使用此欄位。 請改為測試下面定義的個別位欄位旗標。
DUMMYUNIONNAME.DUMMYSTRUCTNAME
DUMMYUNIONNAME.DUMMYSTRUCTNAME.Private
值為 1 表示配置對進程是私用的。
DUMMYUNIONNAME.DUMMYSTRUCTNAME.MappedDataFile
值為 1 表示配置是資料檔案的對應檢視。
DUMMYUNIONNAME.DUMMYSTRUCTNAME.MappedImage
值為 1 表示配置是可執行映射的對應檢視。
DUMMYUNIONNAME.DUMMYSTRUCTNAME.MappedPageFile
值為 1 表示配置是分頁檔支援區段的對應檢視。
DUMMYUNIONNAME.DUMMYSTRUCTNAME.MappedPhysical
值為 1 表示配置是 \Device\PhysicalMemory 區段的檢視。
DUMMYUNIONNAME.DUMMYSTRUCTNAME.DirectMapped
值為 1 表示配置是直接對應檔案的對應檢視。
DUMMYUNIONNAME.DUMMYSTRUCTNAME.Reserved
保留的。
RegionSize
配置的大小。
CommitSize
與配置相關聯的認可費用。 針對私人配置,這是認可區域中頁面的合併大小,而不是保留。 對於對應的檢視,這是具有寫入時禁止複製的合併頁面大小,或因寫入時複製而設為私用。
備註
WIN32_MEMORY_REGION_INFORMATION結構包含單一記憶體配置的相關資訊。 相反地,VirtualQuery函式所傳回的MEMORY_BASIC_INFORMATION結構描述單一配置中頁面的連續執行,這些配置全都有相同的類型、狀態和保護。 VirtualQuery所傳回的WIN32_MEMORY_REGION_INFORMATION欄位和記憶體類型值之間的對應如下所示:
WIN32_MEMORY_REGION_INFORMATION | MEMORY_BASIC_INFORMATION::Type |
---|---|
私人 | MEM_PRIVATE |
MappedDataFile | MEM_MAPPED |
MappedImage | MEM_IMAGE |
MappedPageFile | MEM_MAPPED |
MappedPhysical | MEM_MAPPED |
需求
最低支援的用戶端 | Windows 10 1607 版 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2016 [僅限傳統型應用程式] |
標頭 | memoryapi.h (包含 Windows.h) |