【发布时间】:2017-05-12 23:16:58
【问题描述】:
在有人说这是重复之前,我已经检查了 here、here、here、here 以及其他一些资源,包括 MS Task Scheduler Class documentation。
我希望能够使用我正在开发的 C# 程序列出我的服务器上的计划任务。一些建议使用 schtasks.exe MS 程序,另一些建议使用 third-party library,它似乎很旧,只能与 .NET Framework 2.0 一起使用,另一些建议使用 MS Task Scheduler Class,它似乎受到保护,我还没有看到一些示例,所以我了解如何我可以使用它,其他人建议甚至读取 C:\Windows\System32\Tasks 文件夹下每台远程计算机中的 XML 文件。
我的问题是:Windows 中的任务是否难以使用某些 VS 内置类来处理?为了做一些(有点)愚蠢的事情,比如列出已经在机器上安排的任务,我是否必须跳过障碍?
谢谢,
编辑:
我最终使用了 Process 类并针对所有服务器启动了 schtasks.exe。不完全是我想要的,但它有效。如果有人需要代码,请给我留言,我将其发布在这里。谢谢。
【问题讨论】:
-
在 MS 任务计划程序类的上下文中,“似乎受到保护”是什么意思?
-
@JimMischel,在 [MS 文档] (msdn.microsoft.com/en-us/library/…) 中说构造函数受到保护。
-
是的,但是
TaskScheduler.Current是静态的和公开的,TaskScheduler.Default也是如此。构造函数仅供派生类使用。在任何情况下,该类似乎都不是操作系统计划任务列表的接口。 -
您能否发布您的解决方案作为答案。
-
我很惊讶这在 .Net Framework 中不存在。
标签: c# .net task scheduled-tasks