【发布时间】: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