structure WIN32_MEMORY_REGION_INFORMATION (memoryapi.h)

Contient des informations sur une région de mémoire. Une région de mémoire est une allocation unique créée à l’aide d’une fonction d’allocation de mémoire, telle que VirtualAlloc ou MapViewOfFile.

Syntaxe

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;

Membres

AllocationBase

Adresse de base de l’allocation.

AllocationProtect

Valeur de protection de page spécifiée lors de la création de l’allocation. Les protections des pages individuelles au sein de l’allocation peuvent être différentes de cette valeur. Pour interroger les valeurs de protection de pages individuelles, utilisez la fonction VirtualQuery .

DUMMYUNIONNAME

DUMMYUNIONNAME.Flags

Représente tous les indicateurs de région de mémoire sous la forme d’une seule valeur ULONG. Les applications ne doivent pas utiliser ce champ. Au lieu de cela, testez les indicateurs de champ de bits individuels définis ci-dessous.

DUMMYUNIONNAME.DUMMYSTRUCTNAME

DUMMYUNIONNAME.DUMMYSTRUCTNAME.Private

La valeur 1 indique que l’allocation est privée pour le processus.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.MappedDataFile

La valeur 1 indique que l’allocation est une vue mappée d’un fichier de données.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.MappedImage

La valeur 1 indique que l’allocation est une vue mappée d’une image exécutable.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.MappedPageFile

La valeur 1 indique que l’allocation est une vue mappée d’une section sauvegardée par un fichier de page.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.MappedPhysical

La valeur 1 indique que l’allocation est une vue de la section \Device\PhysicalMemory .

DUMMYUNIONNAME.DUMMYSTRUCTNAME.DirectMapped

La valeur 1 indique que l’allocation est une vue mappée d’un fichier mappé.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.Reserved

Réservé.

RegionSize

La taille de l'allocation.

CommitSize

Frais de validation associés à l’allocation. Pour les allocations privées, il s’agit de la taille combinée des pages dans la région qui sont validées, par opposition à réservées. Pour les vues mappées, il s’agit de la taille combinée des pages qui bénéficient d’une protection contre la copie en écriture ou qui ont été rendues privées à la suite de la copie en écriture.

Notes

La structure WIN32_MEMORY_REGION_INFORMATION contient des informations sur une allocation de mémoire unique. En revanche, la structure MEMORY_BASIC_INFORMATION retournée par la fonction VirtualQuery décrit une série contiguë de pages au sein d’une allocation unique qui ont toutes le même type, état et protection. Le mappage entre les champs WIN32_MEMORY_REGION_INFORMATION et les valeurs de type mémoire retournés par VirtualQuery est le suivant :

WIN32_MEMORY_REGION_INFORMATION MEMORY_BASIC_INFORMATION::Type
Privées MEM_PRIVATE
MapDataFile MEM_MAPPED
MapImage MEM_IMAGE
MapPageFile MEM_MAPPED
MapPhysical MEM_MAPPED

Spécifications

   
Client minimal pris en charge Windows 10, version 1607 [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2016 (applications de bureau uniquement)
En-tête memoryapi.h (inclure Windows.h)

Voir aussi

MEMORY_BASIC_INFORMATION

MapViewOfFile

VirtualAlloc

VirtualQuery