Я создаю Outlook addin, используя VS 2008 и C#. Чтобы функционировать, это дополнение проходит через все электронные письма с использованием Redemption и анализирует его.Outlook Addin получает доступ к получателю обмена в автономном режиме?
Я недавно столкнулся с проблемой, когда кто-то открыл внешний вид без сетевого подключения (сеть отключена, отключена от сети, или она мобильна, как ноутбук, и на данный момент у нее нет возможности подключения). Кажется, что он получает список получателей.
System.Runtime.InteropServices.COMException (0x80040115): Error in IAddrBook::OpenEntry: MAPI_E_NETWORK_ERROR Error: The connection to Microsoft Exchange is unavailable. Your network adapter does not have a default gateway. Component: Microsoft Exchange Address Book at Redemption.RDOAddressEntryClass.get_SMTPAddress()
Это происходит в этом коде:
/// <summary>
/// Retrieves a list of recipient addresses from an RDOMail object
/// </summary>
/// <param name="rdoItem">The email to analyze</param>
/// <returns>A list of e-mail addresses</returns>
protected List<string> GetRecipients(RDOMail rdoItem)
{
RDORecipients recipients = rdoItem.Recipients;
List<string> recipientList = new List<string>();
if (recipients != null && recipients.Count > 0)
{
for (int i = 1; i <= recipients.Count; i++)
{
RDOAddressEntry addressEntry = recipients[i].AddressEntry;
if (addressEntry != null)
{
string recipient = addressEntry.SMTPAddress;
recipient = recipient.Trim();
if (recipient != null && recipient != String.Empty)
{
recipientList.Add(recipient);
}
System.Runtime.InteropServices.Marshal.FinalReleaseComObject(addressEntry);
addressEntry = null;
}
}
}
if (recipients != null)
{
System.Runtime.InteropServices.Marshal.FinalReleaseComObject(recipients);
recipients = null;
}
return recipientList;
}
Таким образом, вопрос, как я могу получить получатель электронной почты без необходимости проверки подлинности или разрешения от биржи и умирают, потому что нет сетевого подключения?
EDIT: В качестве альтернативы - есть ли способ кэшировать адреса электронной почты smtp в Outlook, чтобы, если он позже отправляется в автономный режим, ему не нужно разрешать адреса электронной почты?
Вы пытались использовать Outlook в режиме кеширования? –
Я стараюсь не работать с этим как предположение и найти обходное решение. – McAden