gpt4 book ai didi

mfc - MAPISendMail 与 Outlook 有时会导致 winmail.dat

转载 作者:行者123 更新时间:2023-12-01 10:59:20 25 4
gpt4 key购买 nike

我正在使用 MAPISendMail() 在 MFC 应用程序中,我遇到的问题是 webmail 客户端有时会收到 winmail.dat 附件,而不是“真实”附件。

我研究了很多,发现其他人也遇到了这个问题,但没有找到解决方案。

我相信问题可能出在我的 MapiFileDesc 结构,其中我将 lpFileType 成员指向 NULL,以便让邮件程序(在我的情况下为 Outlook 2010)自动确定文件类型。
lp文件类型 MapiFileTagExt 结构,文档是这样说的:
NULL 值表示未知文件类型或由操作系统确定的文件类型。

所以我相信这应该适用于常见类型,例如 JPEG 或 GIF 等。

我读到 winmail.dat 是由 Outlook 发送用 编码的邮件引起的。 ms-tnef 编码,这是 Microsoft 专有的。但是,在发送电子邮件时,Outlook 将“HTML”显示为突出显示,而不是 RTF。

有没有人遇到过这个问题并妥善解决?

通过 SMTP 等发送不是一种选择,因为用户应该在他们的已发送邮件文件夹中有邮件的副本。
使用 Outlook 对象模型不是一种选择,因为这需要用户安装 Outlook,而不是任何 MAPI 兼容客户端。

最佳答案

我有类似的问题。

我找到了一个 KB article在“一次性寻址”部分有有趣的信息,说本地址以 [SMTP:SMTP 地址] 格式提供时 - 那么电子邮件总是以富文本格式发送。

对我来说,修复根本不是设置 MapiRecipDesc 对象的“地址”属性。相反,我将地址放在 Name 属性中。然后打开对话框首先不解析地址,但它在发送之前解析它,然后它不会以 RTF 格式发送!

我什至让它与收件人的姓名和地址一起使用:

MapiRecipDesc.Name = "Firstname Lastname <mail@address.com>";

关于mfc - MAPISendMail 与 Outlook 有时会导致 winmail.dat,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12687230/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com