ITnef::FinishComponent
适用于:Outlook 2013 | Outlook 2016
(TNEF) 流,一次处理一个消息的单个组件 Transport-Neutral 封装格式。
HRESULT FinishComponent(
ULONG ulFlags,
ULONG ulComponentID,
LPSPropTagArray lpCustomPropList,
LPSPropValue lpCustomProps,
LPSPropTagArray lpPropList,
LPSTnefProblemArray FAR * lppProblems
);
参数
ulFlags
[in]控制将完成哪个组件的标志的位掩码。 必须设置以下标志之一或另一个:
TNEF_COMPONENT_ATTACHMENT
附件对象的处理将完成; ulComponentID 参数包含附件的 PR_ATTACH_NUM (PidTagAttachNumber) 属性。
TNEF_COMPONENT_MESSAGE
将完成消息对象的处理。
ulComponentID
[in] 0 表示正在处理邮件,或要处理的附件的 PR_ATTACH_NUM 属性。 如果在 ulFlags 参数中设置了TNEF_COMPONENT_MESSAGE标志, ulComponentID 必须为 0。
lpCustomPropList
[in]指向 SPropTagArray 结构的指针,该结构包含用于标识 lpCustomProps 参数中传递的属性的属性标记。 lpCustomProps 中的每个属性值与 lpCustomPropList 参数中的属性标记之间必须有一对一的对应关系。
lpCustomProps
[in]指向 SPropValue 结构的指针,该结构包含要编码的属性的属性值。
lpPropList
[in]指向 SPropTagArray 结构的指针,该结构包含要编码的属性的属性标记。
lppProblems
[out]指向返回 的 STnefProblemArray 结构的指针的指针。 STnefProblemArray 结构指示未正确编码的属性(如果有)。 如果在 lppProblems 参数中传递 NULL,则不会返回任何属性问题数组。
返回值
S_OK
调用成功,并返回了预期的值。
备注
传输提供程序、消息存储提供程序和网关调用 ITnef::FinishComponent 方法,以对一个组件(消息或附件)执行 TNEF 处理,如 ulFlags 参数中设置的标志所示。
若要启用组件处理,调用提供程序或网关在 ulFlags 中为 OpenTnefStream 或 OpenTnefStreamEx 函数传递TNEF_COMPONENT_ENCODING标志,该标志打开对象以接收编码。
传递 lpCustomPropList 和 lpCustomProps 参数中的值将执行等效于 ITnef::SetProps 方法完成的组件编码。 传递 lpPropList 参数中的值将执行等效于 ITnef::AddProps 方法完成的组件编码,并在 ulFlags 中设置了 TNEF_PROP_INCLUDE 标志。 通过传递这些值,可以通过单个调用而不是多个调用来执行编码。
TNEF 实现在不停止 FinishComponent 进程的情况下报告 TNEF 流编码问题。 lppProblems 中返回的 STnefProblemArray 结构指示无法处理哪些 TNEF 属性或 MAPI 属性(如果有)。 STnefProblemArray 中包含的 STnefProblem 结构之一的 scode 成员中返回的值指示特定问题。 提供程序或网关可以假定 FinishComponent 未返回问题报告的所有属性或属性都已成功处理。
如果提供程序或网关不能处理有问题的数组,它可以在 lppProblems 中传递 NULL;在这种情况下,不会返回问题数组。
仅当调用返回S_OK时, lppProblems 中返回的值才有效。 返回S_OK时,提供程序或网关应检查 STnefProblemArray 结构中返回的值。 如果调用时发生错误,则 STnefProblemArray 结构不会填充,并且调用提供程序或网关不应使用或释放该结构。 如果调用时未发生错误,则调用提供程序或网关必须通过调用 MAPIFreeBuffer 函数释放 STnefProblemArray 的内存。
另请参阅
ITnef::AddProps
ITnef::SetProps
MAPIFreeBuffer
OpenTnefStream
OpenTnefStreamEx
SPropTagArray
STnefProblemArray
ITnef : IUnknown