Alloue un nombre donn� d'octets sur le tas
#include <Memory.au3>
_MemGlobalAlloc ( $iBytes [, $iFlags = 0] )
$iBytes | Le nombre d'octets � allouer. Si ce param�tre est �gal � z�ro et si le param�tre $iflags est d�fini sur $GMEM_MOVEABLE, la fonction retourne le handle d'un objet de m�moire qui est marqu� comme mis au rebut. |
$iFlags |
[optionnel] Attributs d'allocation m�moire: $GMEM_FIXED - alloue de la m�moire fixe. La valeur de retour est un pointeur. $GMEM_MOVEABLE - alloue de la m�moire d�pla�able. Les blocs de m�moire ne sont jamais d�plac�s dans la m�moire physique, mais ils peuvent �tre d�plac�s � l'int�rieur du tas par d�faut. La valeur de retour est le handle de l'objet m�moire. Pour convertir le handle en pointeur, utilisez la fonction _MemGlobalLock(). Cette valeur ne peut pas �tre combin�e avec $GMEM_FIXED. $GMEM_ZEROINIT - Initialise le contenu de la m�moire � z�ro $GHND - Combine $GMEM_MOVEABLE et $GMEM_ZEROINIT $GPTR - Combine $GMEM_FIXED et $GMEM_ZEROINIT |
Succ�s: | Retourne le handle de l'objet m�moire nouvellement allou�e. |
�chec: | Retourne 0. |
Le gestionnaire de la m�moire Windows ne fournit pas un tas local s�par� du tas global.
Si cette fonction r�ussit, elle alloue au moins la quantit� de m�moire requise.
Si la quantit� r�elle allou�e est sup�rieure � la quantit� demand�e, le processus peut utiliser la totalit� de la quantit� allou�e.
Pour d�terminer le nombre r�el d'octets allou�, utilisez la fonction _MemGlobalSize().
Si le tas ne contient pas suffisamment d'espace libre pour satisfaire la demande, cette fonction retourne NULL.
La m�moire allou�e par cette fonction est garantie align�e sur 8 octets.
Pour ex�cuter du code g�n�r� dynamiquement, utilisez la fonction _MemVirtualAlloc() pour allouer de la m�moire et la fonction _Mem_VirtualProtect() pour accorder l'acc�s $PAGE_EXECUTE.
Pour lib�rer la m�moire allou�e, utilisez la fonction _MemGlobalFree().
_MemGlobalFree, _MemGlobalLock, _MemGlobalSize, _MemVirtualAlloc
Consultez GlobalAlloc dans la librairie MSDN.