Allocates a block of memory from the internal library heap and initializes it with the structure's data
_WinAPI_CreateBufferFromStruct ( $tStruct [, $pBuffer = 0 [, $bAbort = True]] )
|$tStruct||The structure that contains data to initialize the buffer.|
|$pBuffer||[optional] A pointer to the existing buffer that to be replaced by a new buffer.
If this parameter is a valid buffer pointer, the memory will be reallocated for a new buffer. However, the new memory is allocated at a different location.
Therefore, you should always use the pointer that returns this function.
If this parameter is 0 (Default) or invalid buffer pointer, the function just allocates a new memory.
|$bAbort||[optional] Specifies whether to exit the script if not enough memory, valid values:
True - Displaying an error message and exit the script with error code 1 (Default).
False - Continue the script and return an error.
|Success:||A pointer to the new buffer.|
|Failure:||0 and sets the @error flag to non-zero (if an exceptions is not set).|
This function creates a buffer of size equal to the size of the specified structure and then copies all data from this structure.
When a buffer is no longer needed, you must destroy it by calling the _WinAPI_FreeMemory() function.