R, RDCOMClient и Outlook: доступ к входящим сообщениям с общими адресами - PullRequest
0 голосов
/ 04 октября 2018

У меня есть несколько почтовых ящиков в Outlook: my.name@abc.com, а также несколько общих почтовых ящиков, например, team.data@abc.com или team.ba@abc.com.

Следуя этому методу Я пытаюсь получить доступ к электронным письмам в моем собственном почтовом ящике.

Проблема в том, что иногда почтовый ящик получает доступ к письмам на my.name@abc.com, иногда это может быть любой из других!Я ознакомился с объяснениями Омегахата, но их пример в основном сфокусирован на Excel, и у меня нет опыта работы с VB.

Я бы хотел определить, из какой папки входящих сообщений получать сообщения. Мой код до сих пор (с проблемой разных почтовых ящиков).Приветствия.

OutApp <- COMCreate("Outlook.Application")
outlookNameSpace = OutApp$GetNameSpace("MAPI")
folder <- outlookNameSpace$Folders(1)$Folders(folderName)
folder$Name(1)
emails <- folder$Items
for (i in 1:10)
{
  subject <- emails(i)$Subject(1)
    print(emails(i)$Subject()) 
}

редактировать: я использую MSOffice Pro Plus 2016

связанные: Как использовать RDCOMClient для отправки электронной почты Outlook с дополнительной учетной записи - перевести существующий код VBA?

1 Ответ

0 голосов
/ 04 октября 2018

Рассмотрим Магазины Outlook Объект:

OutApp <- COMCreate("Outlook.Application")
OutStores <- OutApp$Session()$Stores()

# 1ST ACCOUNT
myfolder <- OutStores[[1]]$GetRootFolder()$folders(folderName)

# 2ND ACCOUNT
myfolder <- OutStores[[2]]$GetRootFolder()$folders(folderName)

...

Равномерный цикл во всех магазинах:

OutApp <- COMCreate("Outlook.Application")
OutStores <- OutApp$Session()$Stores()

store_count <- OutStores$Count()

for (i in 1:store_count) {
    myfolder <- OutStores[[i]]$GetRootFolder()$folders(folderName)

    emails <- myfolder$Items

    for (i in 1:10) {
      subject <- emails(i)$Subject()
      print(subject) 
    }
}

# QUIT APPLICATION
OutApp$Quit()

# RELEASE COM RESOURCES
subject <- NULL; emails <- NULL; myfolder <- NULL
OutStores <- NULL; OutApp <- NULL
gc()
...