Platform SDK: MAPI

CreateIProp

The CreateIProp function creates a property data object, that is, an IPropData object.

Quick Info

Header file: MAPIUTIL.H
Implemented by: MAPI
Called by: Client applications and service providers

SCODE CreateIProp(
  LPCIID lpInterface,                  
  ALLOCATEBUFFER FAR * lpAllocateBuffer,   
  ALLOCATEMORE FAR * lpAllocateMore,   
  FREEBUFFER FAR * lpFreeBuffer,       
  LPVOID lpvReserved,                  
  LPPROPDATA FAR * lppPropData         
);
 

Parameters

lpInterface
[in] Pointer to an interface identifier (IID) for the property data object. The valid interface identifier is IID_IMAPIPropData. Passing NULL in the lpInterface parameter also causes the property data object returned in the lppPropData parameter to be cast to the standard interface for a property data object.
lpAllocateBuffer
[in] Pointer to the MAPIAllocateBuffer function, to be used to allocate memory.
lpAllocateMore
[in] Pointer to the MAPIAllocateMore function, to be used to allocate additional memory where required.
lpFreeBuffer
[in] Pointer to the MAPIFreeBuffer function, to be used to free memory.
lpvReserved
Reserved; must be zero.
lppPropData
[out] Pointer to a pointer to the returned property data object.

Return Values

S_OK
The call succeeded and has returned the expected value or values.
MAPI_E_INTERFACE_NOT_SUPPORTED
The requested interface is not supported for this object.

Remarks

The lpAllocateBuffer, lpAllocateMore, and lpFreeBuffer input parameters point to the MAPIAllocateBuffer, MAPIAllocateMore, and MAPIFreeBuffer functions, respectively. A client application calling CreateIProp passes in pointers to the MAPI functions just named; a service provider passes the pointers to these functions it received in its initialization call or retrieved with a call to the IMAPISupport::GetMemAllocRoutines method.

See Also

Properties Functions