【问题标题】:Autohotkey sending mail through ComObjectAutohotkey 通过 ComObject 发送邮件
【发布时间】:2020-08-08 05:56:50
【问题描述】:

问题: 我制作了一个通过 ComObject 发送邮件的脚本,当我将它用作用户时它就像一个魅力,但如果我使用任务计划程序执行它则不会。


我做了什么?我已将 ComObjActive 更改为 ComObjCreate。


代码:

正文正确,包含 HTML 文本。

Myself = %AUMailAdress%
Recipient := Myself
Subject := Oi
Body := Ci
Recipient5 = Hidden@gmail.com

DocumentLocation = %SourceDir%\Tooloutput\AutoProjectsLog\Faults



olMailItem := 0
MailItem := ComObjCreate("Outlook.Application").CreateItem(olMailItem)
olFormatHTML := 2
MailItem.BodyFormat := olFormatHTML
MailItem.Subject := Subject
MailItem.HTMLBody := Body
Recipient := MailItem.Recipients.Add(Recipient)
Recipient.Type := 1 
Loop, %DocumentLocation%\*.*
MailItem.Attachments.Add(A_LoopFileLongPath)
MailItem.cc := Recipient5
MailItem.Send



ExitApp 
return

问题: 当它尝试制作 ComObject 时出现以下错误。

错误:0x80080005 - 服务器执行失败

行:#

---> 674:MailItem:= ComObjCreate(“Outlook.Application”)。创建项目(olMailItem)

继续运行脚本?

【问题讨论】:

  • 在任务计划程序中,您是否尝试过设置“仅在用户登录时运行”和“以最高权限运行”,然后使用您的用户帐户运行?
  • “仅在用户登录时运行”选项不够好,因为脚本必须在夜间运行。 “以最高权限运行”已切换。

标签: outlook autohotkey taskscheduler comobject


【解决方案1】:

我只是为此挣扎了大约 3 个小时,尝试了很多东西,包括这种方法:

MSDN Method | ",512"

最后,我以管理员身份运行 Outlook,一切正常,使用以下代码:

outlookApp := ComObjCreate("Outlook.Application")
MailItem := outlookApp.CreateItem(0)
MailItem.Display

系统:Windows 10 x64

展望 2019

AHK 1.1.33.02 以管理员身份运行

【讨论】:

  • 感谢您的回答!我会更新我的脚本并尝试一下。
猜你喜欢
  • 1970-01-01
  • 2014-02-21
  • 2016-05-15
  • 2014-03-05
  • 2014-08-31
  • 2021-03-11
  • 2011-05-05
  • 2017-05-06
  • 2023-03-16
相关资源
最近更新 更多