MAPI 附件
适用于:Outlook 2013 | Outlook 2016
某些消息存储提供程序使客户端能够将文件、OLE 对象、消息或二进制数据形式的添加信息与消息相关联。 此添加的信息称为邮件附件。 由于仅通过邮件创建、维护和访问附件,因此它们被视为邮件子对象。 附件具有称为附件编号的序列号,而不是具有用于访问的条目标识符。 此数字唯一标识邮件中的附件,但不一定在邮件存储中。 两条不同的邮件可以具有具有相同附件编号的不同附件。 附件编号仅在邮件打开时有效,并且存储在 PR_ATTACH_NUM (PidTagAttachNumber) 属性中。
若要访问有关邮件的所有附件的摘要信息,客户端会检索其附件表。 附件表包含客户端可用于直接访问附件的信息,例如附件编号和记录键。 客户端可以通过以下方式检索附件表:
调用 IMessage::GetAttachmentTable。 有关详细信息,请参阅 IMessage::GetAttachmentTable。
调用 IMAPIProp::OpenProperty。 有关详细信息,请参阅 IMAPIProp::OpenProperty。
消息存储提供程序应支持这两种方法。 OpenProperty 方法要求调用方将 IID_IMAPITable 指定为接口标识符,PR_MESSAGE_ATTACHMENTS (PidTagMessageAttachments) 作为属性标记。 PR_MESSAGE_ATTACHMENTS 是表示邮件附件表的表对象属性。 消息存储提供程序需要为每个消息设置 PR_MESSAGE_ATTACHMENTS ,并将其包含在从 IMAPIProp::GetPropList 方法返回的属性标记数组中。 有关详细信息,请参阅 IMAPIProp::GetPropList。
可以使用PR_MESSAGE_ATTACHMENTS :
使用 IMAPIProp::OpenProperty 访问附件或收件人表。
使用 IMAPIProp::CopyTo 或 IMAPIProp::CopyProps 在复制时排除或包含附件。 有关详细信息,请参阅 IMAPIProp::CopyTo 和 IMAPIProp::CopyProps。
在子对象限制中,指示子限制应应用于附件。
有关详细信息,请参阅 附件表。