我们的系统已成功使用EWS发送邮件和同步日历,但是我们正努力从有效的Exchange帐户别名发送邮件,而这些别名在Outlook中可完美运行。
我们在EWS中使用模拟,并且我尝试使用主地址和别名对其进行设置。
If ewsDetails.useImpersonation AndAlso Not String.IsNullOrWhiteSpace(addressToTry) Then
service.ImpersonatedUserId = New ImpersonatedUserId(ConnectingIdType.SmtpAddress, addressToTry)
service.HttpHeaders.Add(XAnchorMailboxKey, addressToTry)
End If
如果使用别名设置模拟,我将收到一条ErrorNonPrimarySmtpAddress
,消息为:“引用邮箱时必须指定主SMTP地址”。。
如果我尝试使用主地址,则邮件会成功发送,但是它将忽略我使用以下代码指定的任何From
,Sender
或ReplyTo
地址。
Dim msg As New EmailMessage(service)
msg.From = aliasAddress
msg.Sender = aliasAddress
msg.ReplyTo.Add(aliasAddress)
甚至可以使用EWS API从帐户别名发送电子邮件吗?任何修改或解决方法的想法都将不胜感激。
答案 0 :(得分:2)
MAPI和EWS都不允许您使用代理SMTP地址进行发送-邮件将始终从主SMTP地址发送。
只有纯SMTP允许您以编程方式发送时将代理地址之一指定为发件人。最终用户可以使用Proxy Manager之类的实用程序。