Export (0) Print
Expand All
Expand Minimize
This topic has not yet been rated - Rate this topic

CALLERRELEASE

Defines a callback function that can release a table data object when a table view is being released.

Header file:

Mapiutil.h

Defined function implemented by:

Client applications and service providers

Defined function called by:

MAPI

void CALLERRELEASE(
  ULONG ulCallerData,
  LPTABLEDATA lpTblData,
  LPMAPITABLE lpVue
);

Parameters

ulCallerData

[in] Caller data saved by MAPI with the table view and passed to the CALLERRELEASE based callback function. The data provides context about the table view being released.

lpTblData

[in] Pointer to the ITableData : IUnknown interface for the table data object underlying the table view being released.

lpVue

[in] Pointer to the IMAPITable : IUnknown interface for the table view being released. This is an interface for the table object returned in the lppMAPITable parameter of the ITableData::HrGetView method that created the object to release.

A client application or service provider that has populated a table data object can call ITableData::HrGetView to create a read-only, sorted view of the table. The call to HrGetView passes a pointer to a CALLERRELEASE based callback function and also a context to be saved with the table view. When the reference count of the table view returns to zero and the view is being released, the IMAPITable implementation calls the callback function, passing the 32-bit context in the ulCallerData parameter.

A common use of a CALLERRELEASE based callback function is to release the underlying table data object and not have to keep track of it during subsequent processing.

Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

ADD
Show:
© 2014 Microsoft. All rights reserved.