任务计划程序 - 在事件日志 EventID 203 上将失败任务的名称传递给 Action 参数
Task Scheduler - On Event Log EventID 203 pass name of failed task to Action argument
我有一个非常基本的 VB 脚本,可以在计划任务失败时发送预设回复电子邮件。我希望能够使用“编辑操作”对话框中的“添加参数”选项将失败任务的名称直接传递给脚本。
我不确定是否可行,但找不到任何关于使用任务名称或与特定 EventID 关联的任何其他数据的参考。这可以在 Task Scheduler 中完成,还是我必须从我的脚本中搜索事件日志以查找最新的失败任务?
在对其他人的发现进行一些搜索和拼凑之后,我想出了一个完整的解决方案。大部分答案可以在这里找到:
这给出了如何修改任务的 XML 以包含额外数据的基础知识。下面的代码片段显示了引用任务名称所需的特定 xpath。请记住,数据 returned 包含任务计划程序中使用的任何子文件夹名称,如果此名称中有 space,它只会 return 之前的文本部分space。我不得不用破折号而不是 spaces.
重新创建所有文件夹
<ValueQueries>
<Value name=”TaskName”>Event/EventData/Data[@Name='TaskName']</Value>
</ValueQueries>
此查询将给出一个 $(TaskName) 参数,可以将其放入“操作”选项卡上的参数选项中。
我有一个非常基本的 VB 脚本,可以在计划任务失败时发送预设回复电子邮件。我希望能够使用“编辑操作”对话框中的“添加参数”选项将失败任务的名称直接传递给脚本。
我不确定是否可行,但找不到任何关于使用任务名称或与特定 EventID 关联的任何其他数据的参考。这可以在 Task Scheduler 中完成,还是我必须从我的脚本中搜索事件日志以查找最新的失败任务?
在对其他人的发现进行一些搜索和拼凑之后,我想出了一个完整的解决方案。大部分答案可以在这里找到:
这给出了如何修改任务的 XML 以包含额外数据的基础知识。下面的代码片段显示了引用任务名称所需的特定 xpath。请记住,数据 returned 包含任务计划程序中使用的任何子文件夹名称,如果此名称中有 space,它只会 return 之前的文本部分space。我不得不用破折号而不是 spaces.
重新创建所有文件夹<ValueQueries>
<Value name=”TaskName”>Event/EventData/Data[@Name='TaskName']</Value>
</ValueQueries>
此查询将给出一个 $(TaskName) 参数,可以将其放入“操作”选项卡上的参数选项中。