The IMAPIProgress interface is used to implement a progress object — an object for providing client applications with a progress indicator. A progress indicator is a user interface display that shows the percentage of completion of an operation, such as copying folders between message stores. MAPI and client applications implement progress objects and service providers use them.
Header file: | MAPIDEFS.H |
Exposed by: | Progress objects |
Implemented by: | MAPI and client applications |
Called by: | Service providers |
Interface identifier: | IID_IMAPIProgress |
Pointer type: | LPMAPIPROGRESS |
Progress | Updates the progress indicator with status on the progress made toward completion of the operation in question. |
GetFlags | Returns flag settings from the progress object for the level of operation on which progress information is calculated. |
GetMax | Returns the maximum number of items in the operation for which progress information is displayed. |
GetMin | Returns the minimum number of items in the operation for which progress information is displayed. |
SetLimits | Sets the minimum number of items operated on, the maximum number of items operated on, and the flags that control how progress information is calculated for the operation in question. |
MAPI includes an lpProgress parameter in many of the methods that perform potentially lengthy operations. The lpProgress parameter points to a client implementation of a progress object. Clients that implement IMAPIProgress set this parameter to point to their implementation; clients that do not implement IMAPIProgress set it to NULL. To display a progress indicator during processing of the operation, service providers use the progress object supplied by the client if possible or a MAPI implementation if lpProgress is set to NULL.