我需要登录到特定的配置文件,而不是默认的 Outlook,尽管提供了用户名和密码,但它仍然使用默认凭据登录

Mah*_*lii 3 c# asp.net-mvc outlook

我需要登录特定的个人资料

 Microsoft.Office.Interop.Outlook.Application oApp = new Microsoft.Office.Interop.Outlook.Application();
    Microsoft.Office.Interop.Outlook.MAPIFolder inboxFolder = null;
    oApp = new Microsoft.Office.Interop.Outlook.Application();
    oApp.Session.Logon("support@xx.com", "*******", false, true);
    Microsoft.Office.Interop.Outlook.NameSpace oNS = oApp.GetNamespace("MAPI");
    inboxFolder=oNS.GetDefaultFolder(Microsoft.Office.Interop.Outlook.OlDefaultFolders.olFolderInbox);
Run Code Online (Sandbox Code Playgroud)

Dmi*_*nko 5

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

根本不使用密码参数。如果您想连接到特定的 Exchange 邮箱,您需要先创建一个配置文件。请注意,如果 Outlook 已在运行,Namespace.Logon则不执行任何操作 - Outlook 将继续使用之前加载的配置文件。

如果使用Redemption是一个选项(我是它的作者),它会公开RDOSession。LogonHostedExchangeMailbox只要启用基本身份验证,就允许连接到 Exchange 2013 或 2016 邮箱(包括 Office 365 邮箱)。