Планирование задач — важный аспект автоматизации сценариев Windows, а VBScript предоставляет мощный инструмент под названием schtasks для управления запланированными задачами. В этой статье мы рассмотрим различные методы и примеры кода для планирования задач с помощью VBScript и утилиты командной строки schtasks.
Метод 1: использование метода Create
Метод Create позволяет создать новую запланированную задачу с помощью VBScript. Вот пример:
Set objTaskService = CreateObject("Schedule.Service")
objTaskService.Connect
Set objRootFolder = objTaskService.GetFolder("\")
Set objTask = objRootFolder.RegisterTaskDefinition("MyTask", _
CreateEnumValue("TASK_TRIGGER_DAILY"), _
"C:\Scripts\MyScript.vbs", _
"C:\Scripts")
objTask.Triggers.Item(1).StartBoundary = "2024-03-05T09:00:00"
objTask.Triggers.Item(1).ExecutionTimeLimit = "PT1H" ' 1 hour
objTask.Settings.Enabled = True
objTask.RegisterChanges
Метод 2. Использование метода «Выполнить».
Метод «Выполнить» позволяет немедленно запустить существующую запланированную задачу. Вот пример:
Set objTaskService = CreateObject("Schedule.Service")
objTaskService.Connect
Set objTask = objTaskService.GetFolder("\").GetTask("MyTask")
objTask.Run vbNull
Метод 3. Использование метода «Удалить».
Метод «Удалить» позволяет удалить существующую запланированную задачу. Вот пример:
Set objTaskService = CreateObject("Schedule.Service")
objTaskService.Connect
objTaskService.GetFolder("\").DeleteTask "MyTask", 0
Метод 4: использование метода включения/отключения
Методы включения и отключения позволяют включать или отключать существующую запланированную задачу. Вот пример:
Set objTaskService = CreateObject("Schedule.Service")
objTaskService.Connect
Set objTask = objTaskService.GetFolder("\").GetTask("MyTask")
objTask.Enabled = False ' Disable the task
objTask.RegisterChanges
Метод 5. Использование метода Query
Метод Query позволяет получить информацию о существующих запланированных задачах. Вот пример:
Set objTaskService = CreateObject("Schedule.Service")
objTaskService.Connect
Set objTask = objTaskService.GetFolder("\").GetTask("MyTask")
WScript.Echo "Task Name: " & objTask.Name
WScript.Echo "Task Path: " & objTask.Path
WScript.Echo "Task Enabled: " & objTask.Enabled
' ... additional task properties
В этой статье мы рассмотрели различные методы планирования задач с помощью VBScript и утилиты командной строки schtasks. Если вам нужно создать, запустить, удалить, включить, отключить или запросить запланированные задачи, VBScript предоставляет необходимые инструменты для эффективного управления задачами. Используя эти методы, вы можете автоматизировать повторяющиеся задачи и оптимизировать рабочие процессы создания сценариев Windows.