MAPIAllocateMore 

The MAPIAllocateMore function allocates a memory buffer that is linked to another buffer previously allocated with the MAPIAllocateBuffer1MW3BAZ function.

Quick Info

Header file:

MAPIX.H

Implemented by:

MAPI

Called by:

Client applications and service providers

 

SCODE MAPIAllocateMore(

    ULONG cbSize,

 

    LPVOID lpObject,

 

    LPVOID FAR * lppBuffer

 

   );

 

 

Parameters

cbSize

[in] Size, in bytes, of the new buffer to be allocated.

lpObject

[in] Pointer to an existing MAPI buffer allocated using MAPIAllocateBuffer.

lppBuffer

[out] Pointer to the returned, newly allocated buffer.

 

Return Values

S_OK

The call succeeded and has returned the expected value or values.

 

Remarks

During MAPIAllocateMore call processing, the calling implementation acquires a block of memory from the operating system. The memory buffer is allocated on an even-numbered byte address. On platforms where long integer access is more efficient, the operating system allocates the buffer on an address whose size in bytes is a multiple of four.

The only way to release a buffer allocated with MAPIAllocateMore is to pass the buffer pointer specified in the lpObject parameter to the MAPIFreeBuffer16U06F function. The link between the memory buffers allocated with MAPIAllocateBuffer1MW3BAZ and MAPIAllocateMore enables MAPIFreeBuffer to release both buffers with a single call.