PropCopyMore

Applies to: Outlook 2013 | Outlook 2016

Copies a single property value from a source location to a destination location.

Property Value
Header file:
Mapiutil.h
Implemented by:
MAPI
Called by:
Client applications and service providers
SCODE PropCopyMore(
  LPSPropValue lpSPropValueDest,
  LPSPropValue lpSPropValueSrc,
  ALLOCATEMORE * lpfAllocMore,
  LPVOID lpvObject
);

Parameters

lpSPropValueDest

[out] Pointer to the location to which this function writes an SPropValue structure defining the copied property value.

lpSPropValueSrc

[in] Pointer to the SPropValue structure that contains the property value to be copied.

lpfAllocMore

[in] Pointer to the MAPIAllocateMore function to be used to allocate additional memory if the destination location is not large enough to hold the property to be copied.

lpvObject

[in] Pointer to an object for which MAPIAllocateMore will allocate space if necessary.

Return value

S_OK

The single property value was copied successfully.

MAPI_E_NO_SUPPORT

An unknown property type was encountered.

Remarks

A client application or service provider can use the PropCopyMore function to copy a property out of a table that is about to be freed in order to use it elsewhere.

PropCopyMore does not need to allocate memory unless the property value copied is of a type, such as PT_STRING8, that does not fit in an SPropValue structure. For these large properties, the function allocates memory using the MAPIAllocateMore function to which a pointer is passed in the lpfAllocMore parameter.

Injudicious use of PropCopyMore fragments memory; consider using the ScCopyProps function instead.