我有一段代码使用第三方电子邮件发送组件发送电子邮件。
当电子邮件发送时,应该出现在电子邮件正文中的HTML 也被添加为文件名为ATT00001的附件。
我怀疑接收电子邮件服务器(在本例中为Exchange 2007)正在创建附件。
我的问题是 - 有人知道为什么会这样吗?我怀疑某种字符集问题,但我不太确定。
任何帮助将不胜感激!
答案 0 :(得分:1)
当您转发电子邮件时,它可以是“内嵌” - 在新电子邮件的正文中,或者作为“附件” - 作为文件附加到新电子邮件中。
现在我不确定你的问题。你在标题中说“代替”,在主要内容中说“也”。但我怀疑无论你有什么问题都是电子邮件组件,而不是Exchange。检查API以指定电子邮件的转发方式:内联,附加或两者。
答案 1 :(得分:1)
查看收到的电子邮件的来源。如果它有Content-Type: multipart/mixed; boundary=----------whatever
,则它是带附件的文本电子邮件。如果它有Content-Type: multipart/alternative; boundary="----something"
,则它是正确设置为具有文本替代的HTML消息(对于不处理HTML或设置为忽略它的客户端)。
我怀疑服务器是否改变了这种东西(但是谁知道?),我会改为看看你的组件。
有疑问,如果您没有其他工具可以查看发送的内容,您可以尝试使用WireShark捕获SNMP消息并查看它的外观。有点矫枉过正,但我不熟悉其他工具...... :-)我用它的祖先Ethereal来调试和优化IMAP请求。
答案 2 :(得分:0)
只有当我设置charset时才会这样:unicode而不是charset:utf-8,但它可能完全不相关。告诉我们更多关于外部组件肯定会有更好的答案。
答案 3 :(得分:0)
这可能是Outlook MUA在接收端的工作。 This看起来很有趣。也许如果您可以向不同的接收MTA和MUA发送电子邮件,事情可能会缩小一些。