IMAPISupport::StatusRecips
适用于:Outlook 2013 | Outlook 2016
生成传递和非交付报告。
HRESULT StatusRecips(
LPMESSAGE lpMessage,
LPADRLIST lpRecipList
);
参数
lpMessage
[in]指向应为其生成报表的消息的指针。
lpRecipList
[in]指向 ADRLIST 结构的指针,该结构描述 lpMessage 所指向的邮件的收件人。
返回值
S_OK
已成功生成报告。
MAPI_W_ERRORS_RETURNED
呼叫总体成功,但此类型的收件人没有收件人选项。 返回此警告时,应将调用处理为成功。 若要测试此警告,请使用 HR_FAILED 宏。 有关详细信息,请参阅 使用宏进行错误处理。
备注
IMAPISupport::StatusRecips 方法为传输提供程序支持对象实现。 传输提供商调用 StatusRecips 以请求 MAPI 向邮件的一个或多个收件人集发送传递或未送达报告。
给调用方的说明
在处理消息期间,可以多次调用 StatusRecips 。 但是,如果为打开的邮件调用 StatusRecips ,请尽最大努力收集邮件收件人的所有传递和非送达信息,并为该收件人列表调用 StatusRecips 。 单个集合点非常重要,因为对一个收件人的多个 StatusRecip 调用 可能会导致发送多个相同的报告。
在 lpRecipList 参数指示的 ADRLIST 结构中存储与消息传递或不交付相关的属性。 有关传递报表和非交付报表的必需属性和可选属性的完整列表,请参阅 必需报表消息属性 和 可选报表消息属性。
使用 MAPIAllocateBuffer 和 MAPIAllocateMore 函数为 lpRecipList 中的 ADRLIST 结构分配内存。 仅当 StatusRecips 成功时,MAPI 才会通过调用 MAPIFreeBuffer 函数来释放内存。
有关传递报表和未送达报表的概述,请参阅 MAPI 报告消息。