Использование Outlook API для перехода к определенной папке

StackOverflow https://stackoverflow.com/questions/76964

  •  09-06-2019
  •  | 
  •  

Вопрос

Я пытаюсь написать некоторый код на C #, чтобы попасть в определенную папку в почтовом ящике Outlook.У меня есть следующий код:

Outlook.Application oApp = new Outlook.Application();
Outlook.NameSpace oNS = oApp.GetNamespace("mapi");
Outlook.Recipient oRecip = oNS.CreateRecipient("AccountNameHere");
oRecip.Resolve();
if (oRecip.Resolved)
{
  oInbox = oNS.GetSharedDefaultFolder(oRecip, Outlook.OlDefaultFolders.olFolderInbox);
  oInboxMsgs = oInbox.Items;
  ItemCount = oInboxMsgs.Count;
  Console.Writeline("There are {0] items.", ItemCount.ToString())
}

Это приведет меня к папке "Входящие".Я пытаюсь добраться до папки на том же уровне, что и папка "Входящие".Я считаю, что мне нужно использовать GetFolderFromID вместо GetSharedDefaultFolder , но я не понимаю, как это использовать.Есть ли способ выполнить итерацию по всем папкам верхнего уровня?Как я могу определить EntryID и StoreID папки?

Спасибо!

Это было полезно?

Решение

Вы можете использовать элемент коллекции папок Outlook.Объект пространства имен.Таким образом, вы можете выполнить итерацию по коллекции и найти свою папку по ее названию.В случае, если вы все еще хотите использовать GetFolderFromID, вы можете использовать Дальновидный шпион инструмент для получения значений EntryID и StoreID.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top