连接到 Exchange office 365,共享邮箱
Connecting to Exchange office 365, Shared mail box
我们全部迁移到office365后,我的应用读取发送到某个共享邮箱的邮件失败了。
我不知道如何解决这个问题。迁移前它运行良好。
当时我的证件是:
exchangeService.Credentials = New WebCredentials("User",
"PW", "windowsdomain")
exchangeService.AutodiscoverUrl("inboxxx@domain.com")
我正在使用 URI:
'
exchangeService.Url = exchangeService.Url = New Uri("https://owa.DOMAIN.com/ews/exchange.asmx")
和交换服务Exchange2010_SP2。
但是在迁移之后它没有工作,尽管我认为我正确地更新了代码(显然我没有)。
我一直在尝试的代码是这样的:(这不起作用)
Sub GetEmails()
Dim exchangeService As New ExchangeService(ExchangeVersion.Exchange2013)
'WebService Uri
'Try
exchangeService.Url = New Uri("https://outlook.office365.com/ews/exchange.asmx")
exchangeService.Credentials = New WebCredentials("user@domain.com", "PW")
exchangeService.AutodiscoverUrl("inboxxx@domain.com")
Dim findResults As FindItemsResults(Of Item) = exchangeService.FindItems(WellKnownFolderName.Inbox, New ItemView(10))
For Each item As Item In findResults.Items
Dim strID As String
'Get mail ID
strID = item.Id.ToString
'Get Lid from mail subject
strLid2 = item.Subject.ToString
strLid2 = UCase(strLid2.Substring(strLid2.Length - 8))
'Get attachements
Call GetAttachmentsFromEmail(exchangeService, strID)
'Move email
Call MoveEmail(exchangeService, strID)
'Upload files to case
Call GetFiles()
Next
End Sub
我希望有人能帮助我,或者给我指明正确的方向,这样我就能克服这个挑战。
Br
VG
如果是共享邮箱,您应该使用 FolderId class 指定要访问的邮箱,例如
FolderId MailboxToAccess = new FolderId(WellKnownFolderName.Inbox, "SharedMailbox@domain.com");
exchangeService.FindItems(MailboxToAccess, New ItemView(10))
删除自动发现行,它对您没有任何作用,因为它所做的只是发现 CAS 服务器的 URL(这是 Office365 中您已经静态指定的单个端点)。它没有显示您连接到哪个邮箱。
我们全部迁移到office365后,我的应用读取发送到某个共享邮箱的邮件失败了。
我不知道如何解决这个问题。迁移前它运行良好。
当时我的证件是:
exchangeService.Credentials = New WebCredentials("User", "PW", "windowsdomain") exchangeService.AutodiscoverUrl("inboxxx@domain.com")
我正在使用 URI: '
exchangeService.Url = exchangeService.Url = New Uri("https://owa.DOMAIN.com/ews/exchange.asmx")
和交换服务Exchange2010_SP2。
但是在迁移之后它没有工作,尽管我认为我正确地更新了代码(显然我没有)。
我一直在尝试的代码是这样的:(这不起作用)
Sub GetEmails()
Dim exchangeService As New ExchangeService(ExchangeVersion.Exchange2013)
'WebService Uri
'Try
exchangeService.Url = New Uri("https://outlook.office365.com/ews/exchange.asmx")
exchangeService.Credentials = New WebCredentials("user@domain.com", "PW")
exchangeService.AutodiscoverUrl("inboxxx@domain.com")
Dim findResults As FindItemsResults(Of Item) = exchangeService.FindItems(WellKnownFolderName.Inbox, New ItemView(10))
For Each item As Item In findResults.Items
Dim strID As String
'Get mail ID
strID = item.Id.ToString
'Get Lid from mail subject
strLid2 = item.Subject.ToString
strLid2 = UCase(strLid2.Substring(strLid2.Length - 8))
'Get attachements
Call GetAttachmentsFromEmail(exchangeService, strID)
'Move email
Call MoveEmail(exchangeService, strID)
'Upload files to case
Call GetFiles()
Next
End Sub
我希望有人能帮助我,或者给我指明正确的方向,这样我就能克服这个挑战。
Br VG
如果是共享邮箱,您应该使用 FolderId class 指定要访问的邮箱,例如
FolderId MailboxToAccess = new FolderId(WellKnownFolderName.Inbox, "SharedMailbox@domain.com");
exchangeService.FindItems(MailboxToAccess, New ItemView(10))
删除自动发现行,它对您没有任何作用,因为它所做的只是发现 CAS 服务器的 URL(这是 Office365 中您已经静态指定的单个端点)。它没有显示您连接到哪个邮箱。