繁体   English   中英

如何使用 Windows 登录的用户名和密码访问 Outlook Exchange Server?

[英]How to access Outlook Exchange Server with Username and Password from Windows Login?

我正在为我的公司使用 VS19 在 WinForms 中创建一个“简单”VSTO(Outlook 插件),它将扫描所有文件夹中的社会安全号码并在 listView 中列出电子邮件项目,以便用户可以删除邮件。

我正在使用 EWS 托管 API 客户端: https://docs.microsoft.com/en-us/exchange/client-developer/exchange-web-services/get-started-with-ews-managed-api-client-applications ?redirectedfrom=MSDN

我已经实现了上述罚款,但问题是我不知道如何正确访问 Exchange Server。 在链接中提供的示例中,用户名和密码是硬编码的,由于这是一个发布给多个不同用户的应用程序,我想使用 windows 登录名访问交换服务器(这是我公司的相同登录名)。

using Microsoft.Exchange.WebServices.Data;

// Setup how to download emails from the exchange server
ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2010_SP1);
service.Credentials = new WebCredentials("test.tester", "test123","domaintest");
service.AutodiscoverUrl("test.tester@test.com");


// Add all the mails from exchange server (inbox) to a list
bool more = true;
ItemView view = new ItemView(int.MaxValue, 0, OffsetBasePoint.Beginning);
view.PropertySet = PropertySet.IdOnly;
FindItemsResults<Item> findResults;
List<EmailMessage> emails = new List<EmailMessage>();
while (more)
{
     findResults = service.FindItems(WellKnownFolderName.Inbox, view);
     foreach (var item in findResults.Items)
        {
        emails.Add((EmailMessage)item);
        }
        more = findResults.MoreAvailable;
        if (more)
        {
            view.Offset += 1000;
        }
}

当我在上面的代码中硬编码我的信息时,一切正常,我可以访问收件箱文件夹并使用 email 消息创建一个列表

在搜索了几个小时没有结果后,我希望你能帮助我。

如果您的目标是本地 Exchange 服务器并且您的用户凭据已加入域:

service.UseDefaultCredentials = true;

以本地 Exchange 服务器为目标的加入域的客户端可以使用登录用户的默认凭据,假设凭据与邮箱相关联。 在 ExchangeService object 的实例化之后添加以下代码。

// Setup how to download emails from the exchange server
ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2010_SP1);
service.UseDefaultCredentials = true;
service.AutodiscoverUrl("test.tester@test.com");

但是,如果您的目标是 Exchange Online 或 Office 365 开发人员站点邮箱,则必须传递显式凭据。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM