UDF > WinAPIEx > System > Heap >


_WinAPI_CreateBufferFromStruct

Alloue un bloc de mémoire sur le tas et l'initialise avec les données d'une structure

#include <WinAPIMem.au3>
_WinAPI_CreateBufferFromStruct ( $tStruct [, $pBuffer = 0 [, $bAbort = True]] )

Paramètres

$tStruct La structure qui contient des données pour initialiser le tampon.
$pBuffer [optionnel] Le pointeur sur le tampon existant qui doit être remplacé par un nouveau tampon.
Si ce paramètre est un pointeur de tampon valable, la mémoire sera réallouée pour le nouveau tampon. Cependant, la nouvelle mémoire est allouée à un endroit différent.
Par conséquent, vous devriez toujours utiliser le pointeur que cette fonction retourne.
Si ce paramètre est 0 (par défaut) ou si le pointeur de tampon est invalide, la fonction alloue simplement une nouvelle mémoire.
$bAbort [optionnel] Spécifie s'il faut quitter le script s'il n'y a pas assez de mémoire, les valeurs valides sont:
    True - Affiche un message d'erreur et termine le script avec le code d'erreur 1 (par défaut).
    False - Continue le script et reourne une erreur.

Valeur de retour

Succès: Retourne un pointeur sur le nouveau tampon.
Échec: Retourne 0 et définit @error <> 0 (si une exception n'est pas défini).

Remarques

Cette fonction crée un tampon de taille égale à la taille de la structure spécifiée et puis copie les données à partir de cette structure.

Quand le tampon n'est plus nécessaire, vous devez le détruire en appelant la fonction _WinAPI_FreeMemory().

En relation

_WinAPI_FreeMemory