以编程方式确定是否启用了任务计划程序中的特定任务

时间:2014-07-24 13:51:57

标签: sql-server scheduled-tasks windows-server-2008

我想设置一个自动检查程序(例如SQL Server中的作业),它会定期检查是否启用了Windows Server 2008中的任务计划程序中的特定任务。然后,如果任务被禁用,检查员将发送电子邮件。

有没有办法做到这一点?

原因:有时您的意图是暂时禁用任务,但您忘记稍后启用它。

2 个答案:

答案 0 :(得分:1)

您可以通过WMI查询Windows任务数据。我不认为SQL是这个问题的最佳答案 - 我想你可以编写一个CLR-Proc,但是编写.Net应用程序并且可能从SQL调用它并适当地处理返回代码会更好。

http://msdn.microsoft.com/en-us/library/aa394601(v=vs.85).aspx

答案 1 :(得分:-1)

您可以使用

检查作业是否已启用
 SELECT [name], [enabled] FROM msdb.dbo.sysjobs;

但要定期这样做需要另一份工作。如果被禁用怎么办?