小编Wol*_*lf1的帖子

通过 Outlook 2016 在 R 中发送电子邮件

我一直在使用 RDCOMClient 包,如此处所述通过 Outlook 在 R 中发送电子邮件。Outlook 2010 和 Windows 7 一切正常。脚本不起作用,因为我已将系统更改为带有 Outlook 2016 的 Windows 10。

这是脚本:

library(RDCOMClient)

OutApp <- COMCreate("Outlook.Application")
outMail = OutApp$CreateItem(0)
outMail[["To"]] = "test@test.com"
outMail[["subject"]] = "test"
outMail[["body"]] = "Test."
outMail$Send()
Run Code Online (Sandbox Code Playgroud)

它在最后一行失败,错误如下:

80004004 不支持 InterfaceSupportsErrorInfo checkErrorInfo -2147467260 错误:操作中止

建议的解决方法是打开消息框并模拟按 Ctrl+Enter:

library(KeyboardSimulator)
library(RDCOMClient)

OutApp <- COMCreate("Outlook.Application")
outMail = OutApp$CreateItem(0)
outMail[["To"]] = "test@test.com"
outMail[["subject"]] = "test"
outMail[["body"]] = "Test."
outMail$Display()
Sys.sleep(3)

keybd.press('Ctrl+Enter')
Run Code Online (Sandbox Code Playgroud)

但是这种方法并不是100%可靠的。

你知道如何让 outMail$Send() 再次工作吗?

谢谢!

email r rdcomclient windows-10 outlook-2016

5
推荐指数
0
解决办法
487
查看次数

标签 统计

email ×1

outlook-2016 ×1

r ×1

rdcomclient ×1

windows-10 ×1