#c# #visual-studio #outlook-redemption
#c# #visual-studio #outlook-redemption
Вопрос:
У меня есть программа, которая использует redemption для доступа к элементам входящих сообщений пользователей. Программа работает на собственном сервере Exchange без проблем. Однако мы находимся в процессе перехода на O365. Мы пытаемся преобразовать программу для подключения к Office 365. Это работает для пользователя, который вошел в систему на ПК и имеет настройки Outlook. Когда я пытаюсь получить доступ к почтовому ящику другого пользователя в Exchange online, к которому у меня есть полные права доступа, я получаю сообщение об ошибке в IMAPISession:: OpenMsgStore: MAPI_E_LOGON_FAILED «.
У кого-нибудь это работает? Есть ли какие-либо разрешения, кроме полного доступа, которые мне нужно назначить? Дайте мне знать, какой опыт у вас был.
Вот код для подключения.
rdsSession.LogonHostedExchangeMailbox("user@domain.com", "user@domain.com", "Password")
Ошибка возникает в этой строке при попытке получить папку «Входящие».
rdfFolder = rdsSession.GetDefaultFolder(rdoDefaultFolders.olFolderInbox)
Если я добавлю туда свою учетную запись, это сработает. Другая учетная запись пользователя с полным доступом этого не делает.
Спасибо
Ответ №1:
Основное правило заключается в том, чтобы сначала подключиться к своему почтовому ящику (администратора) с помощью LogonHostedExchangeMailbox
, а затем открыть почтовый ящик другого пользователя с помощью RDOSession.GetSharedMailbox
/ GetSharedDefaultFolder
Комментарии:
1. Спасибо, вы попробуете это.
2. Я получаю это сейчас при использовании user@domain.mail.onmicrosoft.com домен в getsharedmailbox(). {«Не удалось найти DN хранилища» amp; vbCrLf amp; «Не удалось получить XML-файл автоматического обнаружения: GetAutodiscoverForEmailAddress: в AD нет серверов автоматического обнаружения для этого адреса» amp; vbCrLf amp; «Ошибка HTTP 404 от uxy.com/autodiscover/autodiscover.xml » amp; vbCrLf amp; «Ответ сервера:» amp; vbCrLf amp; «<!DOCTYPE html PUBLIC «»-//W3C //DTD XHTML 1.0 Strict//RU»» «» w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd «»>»
3. У меня это получилось, моя проблема была с многофакторной аутентификацией в моей учетной записи O365. После отключения этого и переключения на getsharedmailbox и getshareddefaultfolder все работает. Как для внутренних пользователей, так и для пользователей O365, поскольку мы все еще находимся в гибридном режиме. Спасибо, Дмитрий.