当前位置: 首页 > 知识库问答 >
问题:

无法使用EWS访问Exchange设备邮箱

江超英
2023-03-14

我已经设置了一个Office365设备邮箱,这样我就可以在outlook中打开它(使用Open->其他用户的邮箱),但是我无法使用C#EWS API访问该邮箱。访问邮箱的代码:

_service.ImpersonatedUserId = new ImpersonatedUserId(ConnectingIdType.SmtpAddress, delegateBox);
 _inbox = Folder.Bind(_service, WellKnownFolderName.Inbox);

结果出现以下异常:

Exception in ProcessWebException
Microsoft.Exchange.WebServices.Data.ServiceResponseException: The SMTP address has no mailbox associated with it.
at Microsoft.Exchange.WebServices.Data.ServiceRequestBase.ProcessWebException(WebException webException)
at   Microsoft.Exchange.WebServices.Data.ServiceRequestBase.GetEwsHttpWebResponse(HttpWebRequest request)
at Microsoft.Exchange.WebServices.Data.SimpleServiceRequestBase.InternalExecute()
at Microsoft.Exchange.WebServices.Data.MultiResponseServiceRequest`1.Execute()
at Microsoft.Exchange.WebServices.Data.ExchangeService.BindToFolder(FolderId folderId, PropertySet propertySet)
at Microsoft.Exchange.WebServices.Data.ExchangeService.BindToFolder[TFolder](FolderId folderId, PropertySet propertySet)
at Microsoft.Exchange.WebServices.Data.Folder.Bind(ExchangeService service, WellKnownFolderName name)

共有1个答案

岳研
2023-03-14

检查delegateBox是否实际对应于该用户的电子邮件。注意,用户的电子邮件可以非常不同于其“登录名+域”。

测试委派/模拟访问时,我建议将委派/模拟帐户设置为Outlook中的附加邮箱。它将允许验证是否有对委托/模拟邮箱的实际访问,并查看实际的电子邮件地址。

 类似资料:
  • 我能够创建一个进程邮箱,并且能够通过https://ExchangeServer/owa/processmailbox@domain.com访问,然后我将提供我的凭据,并且能够登录。 但我无法通过EWS访问。它说SMTP地址没有与之关联的邮箱。 我可以用相同的代码访问我的收件箱。

  • 我正在尝试使用EWS访问Exchange外部联系人(那些不属于特定邮箱的联系人,但属于租户(公司)级别的联系人)。可以从Exchange管理设置网页(Office 365)查看和添加它们- 谢谢。

  • 我目前正在iOS下开发一个EWS客户端应用程序,因此我使用Exchange Web服务与Exchange2010服务器通信(纯XML而不是托管API)。我知道如何访问委托的邮箱和日历,并授予或删除委托对邮箱的访问权限,但在访问之前,我需要先找到这些邮箱。也就是说,我想要找到我的当前用户有权访问的所有邮箱(与所有有权访问当前邮箱的用户相反,当前邮箱是有详细文档记录的)。 这个来自2011年的问题(E

  • 我目前正在使用下面的,但我无法想象这是最有效率的方式?

  • 我是EWS管理API的新手。我想知道是否有任何方法可以将使用EWS API的exchange日历导出到ics文件中。我搜索并找到了创建和检索日历项的方法,但找不到导出日历的方法。非常感谢任何帮助