Redemption无法从Exchange 2016邮箱发送邮件问题咨询
问题排查与解决方案
核心原因分析与排查步骤
- Redemption版本兼容性:Redemption 5.22对Exchange 2016的适配存在不足,该版本发布时Exchange 2016已有多项功能更新,导致收件人解析的API交互逻辑不匹配。建议直接升级到Redemption最新稳定版本测试,新版本通常会修复对主流Exchange服务器的兼容性问题。
- Outlook 2013兼容性补丁缺失:Outlook 2013连接Exchange 2016必须安装特定累积更新,未安装会导致地址解析、发件等功能异常。检查是否安装了针对Exchange 2016适配的Outlook补丁(如KB3114502及后续累积更新包),确保Outlook组件能与Exchange 2016正常交互。
- 收件人解析逻辑问题:Exchange 2016的地址簿查询机制与2013有差异,即使收件人相同,默认解析方式可能失效。可在代码中调整收件人添加方式:
- 直接使用SMTP地址创建收件人,绕过Exchange地址簿解析:
Dim msg As RDOMail Set msg = RDOSession.GetDefaultFolder(olFolderOutbox).Items.Add msg.Recipients.AddSMTPAddress("目标收件人SMTP地址") msg.Subject = "测试邮件" msg.Body = "测试内容" msg.Send - 或者强制触发收件人解析后再发送:
msg.Recipients.Add("收件人显示名称") If Not msg.Recipients.ResolveAll() Then ' 在这里处理解析失败的收件人 End If msg.Send
- 直接使用SMTP地址创建收件人,绕过Exchange地址簿解析:
- 登录参数准确性:当前使用的域名称
rapport.groupe.abc.fr可能未正确指向Exchange 2016服务器实例,尝试替换为Exchange 2016服务器的具体FQDN(如exch2016.abc.fr),确保登录请求路由到正确的服务器。 - Exchange权限配置:检查Exchange 2016邮箱的发送权限,确认该邮箱未被传输规则限制发件,且拥有向目标收件人发送邮件的权限。
优先操作建议
先升级Redemption到最新稳定版,同时安装Outlook 2013的最新累积更新,这两个是此类兼容性问题的最常见诱因。如果问题仍存在,再逐步调整代码逻辑和登录参数。
内容的提问来源于stack exchange,提问作者Antoine V
相关产品推荐
相关产品推荐

