以纯文本形式呈现附件

适用于:Outlook 2013 | Outlook 2016

若要在纯文本邮件中呈现附件,请检索附件 PR_RENDERING_POSITION (PidTagRenderingPosition) 属性,并将其应用于 PR_ATTACH_RENDERING (PidTagAttachRendering) 属性中的数据。 可通过两种方法检索 PR_RENDERING_POSITION

  • 通过调用邮件的 IMessage::OpenAttach 方法打开附件,然后通过调用附件的 IMAPIProp::GetProps 方法请求PR_RENDERING_POSITION属性。 有关详细信息,请参阅 IMessage::OpenAttachIMAPIProp::GetProps

  • 调用邮件的 IMessage::GetAttachmentTable 方法来访问其附件表并检索保存 PR_RENDERING_POSITION 属性的列。 这种方法总是可取的。 有关详细信息,请参阅 IMessage::GetAttachmentTable

请记住,许多 RTF 感知消息存储不会计算 PR_RENDERING_POSITION ,直到客户端请求消息的 PR_BODY (PidTagBody) 属性。 在此之前, PR_RENDERING_POSITION 通常表示近似值。 允许消息存储提供程序向客户端提供近似值以增强性能。

文件或二进制附件的呈现存储在其 PR_ATTACH_RENDERING 属性中。 可以选择使用 与检索PR_RENDERING_POSITION 相同的方式检索 PR_ATTACH_RENDERING:直接从附件或从附件表中检索。 对于 PR_ATTACH_RENDERING,第一个策略虽然更耗时,但更安全。 由于某些消息存储提供程序将其表列截断为 255 字节,或者在少数情况下为 510 个字节,因此很难确保 PR_ATTACH_RENDERING 列包含完整的呈现。 当直接从附件检索属性时,它将始终完成。

OLE 和邮件附件均未 PR_ATTACH_RENDERING设置。 相反,OLE 1 附件的呈现信息存储在邮件文本流中。 对于 OLE 2 附件,它存储在存储对象的特殊子流中。 可通过表单管理器获取邮件附件的呈现信息。

检索邮件附件的呈现

  1. 使用邮件的邮件类访问表单管理器。

  2. 访问表单管理器的 PR_MINI_ICON 属性。 有关详细信息,请参阅 PR_MINI_ICON (PidTagMiniIcon) 。