Partager via


Gestion de la mémoire pour les structures ADRLIST et SRowSet »

S’applique à : Outlook 2013 | Outlook 2016

L’exigence d’allouer toute la mémoire pour une mémoire tampon chaque fois que possible avec un seul appel MAPIAllocateBuffer ne s’applique pas lors de l’utilisation de la liste d’adresses, ou ADRLIST, et des structures d’ensemble de lignes, ou SRowSet.

Ces deux structures sont des exceptions aux règles standard d’allocation et de libération de mémoire. Ils contiennent plusieurs niveaux de structures et sont conçus pour permettre l’ajout ou la suppression de membres individuels. Par conséquent, chaque propriété doit être une allocation distincte.

Lorsque la plupart des structures sont libérées avec un appel à MAPIFreeBuffer, chaque entrée individuelle dans une structure ADRLIST ou SRowSet doit être libérée avec son propre appel à MAPIFreeBuffer ou un seul appel à FreeProws ou FreePadrlist. Pour plus d’informations, consultez MAPIFreeBuffer, ADRLIST et SRowSet.

FreeProws et FreePadrlist sont des fonctions fournies par MAPI pour simplifier la libération de ces structures de données. Pour plus d’informations, consultez FreeProws et FreePadrlist. FreePadrlist libère la mémoire de la structure ADRLIST plus toute la mémoire associée pour les membres de la structure ; FreeProws fait de même pour la structure SRowSet .

Le diagramme suivant montre la disposition d’une structure de données ADRLIST , indiquant les allocations de mémoire distinctes requises. Les zones grises affichent la mémoire qui peut être allouée et libérée avec un seul appel.

Allocation de mémoire ADRLIST

Allocation de mémoire ADRLIST

Voir aussi