IMAPIProgress::Progress
适用于:Outlook 2013 | Outlook 2016
汇报进度指示器,并显示完成操作的进度。
HRESULT Progress(
ULONG ulValue,
ULONG ulCount,
ULONG ulTotal
);
参数
ulValue
[in]指示当前进度级别的数字 (从 ulCount 和 ulTotal 参数或 IMAPIProgress::SetLimits 方法的 lpulMin 和 lpulMax 参数) 全局下限和全局上限之间计算。
ulCount
[in]一个数字,指示当前处理的项相对于总计。
ulTotal
[in]操作期间要处理的项总数。
返回值
S_OK
进度指示器已成功更新。
针对实现者的说明
ulValue 参数仅在操作开始时等于全局最小值,仅在操作完成时等于全局最大值。
使用 ulCount 和 ulTotal 参数(如果可用)显示可选消息,例如“5 个项目已完成,共 10 项”。如果 ulCount 和 ulTotal 设置为 0,请决定是否直观地更改进度指示器。 某些服务提供程序将这些参数设置为 0,以指示他们正在处理其进度相对于父对象的监视的子对象。 在这种情况下,仅当父对象报告进度时更改显示是有意义的。 某些服务提供商每次都为这些参数传递 0。
有关如何实现 进度 和其他 IMAPIProgress 方法的详细信息,请参阅 实现进度指示器。
给调用方的说明
并非 IMAPIProgress::P rogress 的所有三个参数都是必需的。 唯一需要的参数是 ulValue,这是一个指示进度百分比的数字。 如果设置了MAPI_TOP_LEVEL标志,还可以传递对象计数和对象总计。 某些实现使用这些值来显示一个短语,例如“5 个项目已完成 10 项”和进度指示器。
如果要复制单个文件夹中的所有邮件,请将 ulTotal 设置为要复制的邮件总数。 如果要复制文件夹,请将 ulTotal 设置为文件夹中的子文件夹数。 如果要复制的文件夹不包含子文件夹且仅包含邮件,请将 ulTotal 设置为 1。
有关如何调用进度对象以及何时调用的详细信息,请参阅显示进度指示器。
MFCMAPI 引用
有关 MFCMAPI 示例代码,请参阅下表。
文件 | 函数 | 备注 |
---|---|---|
MAPIProgress.cpp |
CMAPIProgress::P rogress |
MFCMAPI 使用 IMAPIProgress::P rogress 方法使用当前进度百分比(从 uValue 和当前最大值和最小值计算)更新 MFCMAPI 状态栏。 |