我编写了一个脚本(.wsf)来在特定服务失败时触发电子邮件。对于第一次、第二次和随后的失败,我已经给出了运行程序并在该选项卡中添加了我的 .wsf 文件。但是我没有收到电子邮件警报。我可以知道我应该做什么来执行它。
采取的步骤:(但没有结果/不起作用)
1) 在运行程序选项卡中,给出脚本的完整路径 2) 编写一个 bat 文件,然后调用该 .wsf 文件 3) 在运行程序选项卡中给出管理员 cmd.exe 路径的路径并给出路径命令行参数选项卡中的脚本文件。
注意:我已经在 cmd.exe 中单独执行了这个,它通过发送电子邮件警报来工作。
为了使服务失败,我手动停止了它,重新启动它但通知没有出现。请让我知道在从 Windows 服务恢复选项卡执行脚本时我应该做些什么。我特此添加了我的脚本。
<job>
<script language="VBScript">
Option Explicit
On Error Resume Next
Dim WshShell
set WshShell=CreateObject("WScript.Shell")
WshShell.run "cmd.exe"
WScript.Sleep 1000
WshShell.SendKeys "telnet smtp.sample.com 25"
WshShell.Sendkeys("{Enter}")
WScript.Sleep 1000
WshShell.SendKeys "EHLO sample.com"
WshShell.Sendkeys("{Enter}")
WScript.Sleep 1000
WshShell.SendKeys "MAIL FROM:alice@sample.com"
WshShell.SendKeys ("{Enter}")
WScript.Sleep 1000
WshShell.SendKeys "RCPT TO:bob@sample.com"
WshShell.SendKeys ("{Enter}")
WScript.Sleep 1000
WshShell.SendKeys "DATA"
WshShell.SendKeys ("{Enter}")
WScript.Sleep 1000
WshShell.SendKeys "Subject: Test Email"
WshShell.SendKeys ("{Enter}")
WshShell.SendKeys ("{Enter}")
WScript.Sleep 1000
WshShell.SendKeys "Body-Test Email executed by running script"
WshShell.SendKeys ("{Enter}")
WScript.Sleep 1000
WshShell.SendKeys "."
WshShell.SendKeys ("{Enter}")
WScript.Quit
</script>
</job>