如何登录Outlook邮箱?

问题描述 投票:0回答:1

我正在尝试使用以下代码登录邮箱,但它登录到我的本地Outlook邮箱而不是oNS.Logon("account", "password", false, false)行代码中指定的邮箱。我需要使用Redemption.RDOSession吗?如果是这样,如何在C#中使用它?

oApp = new Outlook.Application();
oNS = oApp.GetNamespace("mapi");
oNS.Logon("account", "password", false, false);        

var EntryID = oApp.Session.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderInbox).EntryID;
var StoreID = oApp.Session.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderInbox).StoreID;

var folderID = oNS.GetFolderFromID(EntryID, StoreID);

当我使用RDSession.LogonHostedExchangeMailbox时,我得到的错误如下:

GetAutodiscoverForEmailAddress:AD中没有针对此地址的自动发现服务器WinHttpSendRequest中的错误(collabera.com/autodiscover/autodiscover.xml):WinHttpSendRequest中的ERROR_WINHTTP_TIMEOUT错误(collaberainc.mail.onmicrosoft.com/autodiscover/autodiscover.xml):ERROR_WINHTTP_NAME_NOT_RESOLVED错误在WinHttpSendRequest(autodiscover.collaberainc.mail.onmicrosoft.com/autodiscover/autodiscover.xml)中:来自https://autodiscover-s.outlook.com/autodiscover/autodiscover.xml服务器响应的ERROR_WINHTTP_CANNOT_CONNECT HTTP错误401:

GetAutodiscoverUrlFromDns错误:DNS查找错误使用172.17.18.50:DNS服务器报告查询名称错误DNS查找错误使用172.30.30.53:DNS服务器报告查询名称错误DNS查找错误使用172.30.30.11:DNS服务器报告查询名称错误预期HTTP_STATUS_REDIRECT,收到403无法从DNS查找中检索任何自动发现网址

c# vbscript outlook exchange-server outlook-redemption
1个回答
1
投票

OOM中的Namespace.Logon采用现有配置文件的名称(如控制面板|邮件|显示配置文件中所示),而不是邮箱的名称。

由于您标记了“Outlook-Redemption”问题,我假设您正在寻找赎回解决方案。在这种情况下,使用RDOSession.LogonHostedExchangeMailbox - 它确实采用Exchange邮箱的SMTP地址,配置临时配置文件,登录并删除配置文件。

© www.soinside.com 2019 - 2024. All rights reserved.