Как получить электронную почту непосредственно из папки входящих сообщений Outlook 2010 для нескольких пользователей, для надстройки Outlook VSTO - PullRequest
0 голосов
/ 20 сентября 2018

В настоящее время при создании надстройки Outlook 2010 с использованием C # в VSTO (VS 2017) хотелось бы узнать, как получать электронные письма непосредственно из папки «Входящие» для автоматического сканирования фишинговых URL-адресов входящих сообщений.Эта надстройка будет установлена ​​для нескольких учетных записей пользователей и компьютеров.Я мог бы подключиться к серверу обмена напрямую с учетными данными сервера и EWS, но поскольку он предназначен для нескольких пользователей с низкими привилегиями, есть ли способ убедиться, что информация об учетной записи пользователя является единственными учетными данными, необходимыми без необходимости подключения к обменусервер?

Вот пример кода, который я нашел для подключения напрямую к серверу обмена:

using Microsoft.Exchange.WebServices.Data;
ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2013);
service.Credentials = new WebCredentials("USERNAME", "PASSWORD", "DOMAIN");
service.Url = new Uri("EXCHANGE_WEBSERVICE_URL");

Folder inbox = Folder.Bind(service, WellKnownFolderName.Inbox);
if (inbox.UnreadCount > 0)
{
    ItemView view = new ItemView(inbox.UnreadCount);
    view.PropertySet = PropertySet.IdOnly;
    FindItemsResults<Item> results = service.FindItems(inbox.Id, view);

    foreach (Item item in results.Items)
    {
        EmailMessage email = EmailMessage.Bind(service, new ItemId(item.Id.UniqueId.ToString()));

        //PROCESS EMAIL MESSAGE 
        email.IsRead = true;
        email.Update(ConflictResolutionMode.AlwaysOverwrite);
    }
}

Кредиты создателю для примеров кодов

1 Ответ

0 голосов
/ 24 сентября 2018

Нет абсолютно никаких причин использовать EWS в надстройке COM.Во-первых, вам нужно будет запросить у пользователя и сохранить учетные данные.Во-вторых, OOM позволяет открывать папки других пользователей, вызывая Namespace.GetSharedFolder (при условии, что у вас есть права на папку другого пользователя).

...