我在Windows 10计算机上安排了一项任务,以便在晚上运行我们的计费。计费程序创建一个日志文件。该文件在结算程序结束时肯定会关闭。该任务的第二个操作是使用Powershell将日志通过电子邮件发送给相关人员。该操作设置如下:
Start a Program: Powershell.exe
添加的参数是:
-NoProfile -ExecutionPolicy Bypass -file "C:\Program Files (x86)\AIM Tasks\EmailNightlyBilling.ps1"
EmailNightlyBilling如下:
Add-PSSnapin Microsoft.Exchange.Management.Powershell.Admin -erroraction silentlyContinue
$file = "C:\Program Files (x86)\AIM Tasks\MPSBillingLog.txt"
$smtpServer = "192.168.1.X"
$att = new-object Net.Mail.Attachment($file)
$msg = new-object Net.Mail.MailMessage
$smtp = new-object Net.Mail.SmtpClient($smtpServer)
$msg.From = "administrator@domain.com"
$msg.To.Add("user@domain.com")
$msg.Subject = "Nightly Billing Results"
$msg.Body = "Nightly Billing run on old dev computer."
$msg.Attachments.Add($att)
$smtp.Send($msg)
$att.Dispose()
exit
如果我在第一个操作的任务中创建操作,那么它运行正常并通过电子邮件发送日志文件。如果我将动作创建为任务的第二个动作,我会得到
Task Scheduler failed to start "\Nightly Billing" task for user "Domain\Administrator". Additional Data: Error Value: 2147943726.
我在Windows Server 2012上有相同的设置,它可以作为第二个操作正常工作。我不知道为什么Windows 10会有所不同。