Планировщик заданий (ранее Планируемые задания ) [1] — планировщик заданий в Microsoft Windows , который запускает компьютерные программы или скрипты в заранее определенное время или через указанные интервалы времени. [2] [3] Microsoft представила этот компонент в Microsoft Plus! для Windows 95 как Системный агент. [4] Его основным компонентом является одноименная служба Windows . [5] Инфраструктура Планировщика заданий Windows является основой для функции запланированных заданий Windows PowerShell, представленной в PowerShell v3. [6]
Планировщик задач можно сравнить с cron или anacron в Unix-подобных операционных системах . Эту службу не следует путать с планировщиком , который является основным компонентом ядра ОС , выделяющим ресурсы ЦП уже запущенным процессам.
Версии
Планировщик заданий 1.0
Task Scheduler 1.0 входит в состав Windows NT 4.0 [7] (с Internet Explorer 4.0 или более поздней версии), Windows 2000 [7] Windows XP [8] и Windows Server 2003 [ 9] Он работает как служба Windows , а определения задач и расписания хранятся в двоичных.job файлах. Задачи управляются напрямую путем манипулирования файлами .job. Каждая задача соответствует одному действию. В Windows 95 (с Internet Explorer 4.0 или более поздней версии), Windows 98 и Windows Me Task Scheduler работает как обычная программа. mstask.exeОн также отображает значок состояния в области уведомлений в Windows 95 и Windows 98 и работает как скрытая служба в Windows Me, но может быть настроен на отображение значка в трее. [ 1] Компьютерные программы и скрипты могут получать доступ к службе через шесть интерфейсов COM [10] Microsoft предоставляет DLL агента планирования, пример VBScript и файл конфигурации для автоматизации Task Scheduler. [11]
В дополнение к графическому пользовательскому интерфейсу для планировщика заданий в панели управления Windows предоставляет два инструмента командной строки для управления запланированными задачами: at.exe(устарело) [12] и schtasks.exe. [5] [13] [14] Однако at.exeне может получить доступ к задачам, созданным или измененным с помощью панели управления или schtasks.exe. [15] Кроме того, задачи, созданные с помощью at.exe , по умолчанию не являются интерактивными; интерактивность необходимо явно запрашивать. Двоичные файлы ".job", которые создает команда AT, хранятся в каталоге %WINDIR%\Tasks. [16] [17]
Планировщик заданий 2.0
Task Scheduler 2.0 был представлен в Windows Vista [18] и также включен в Windows Server 2008. [19] [9] Переработанный пользовательский интерфейс Task Scheduler теперь основан на Management Console . Помимо запуска задач по расписанию или через указанные интервалы, Task Scheduler 2.0 также поддерживает календарные и основанные на событиях триггеры, такие как запуск задачи при регистрации определенного события в журнале событий или при возникновении комбинации событий. Кроме того, несколько задач, запускаемых одним и тем же событием, можно настроить для одновременного выполнения или в заранее определенной цепочке последовательности действий, вместо необходимости создания нескольких запланированных задач. Задачи также можно настроить для выполнения на основе состояния системы, например, при простое в течение заранее настроенного периода времени, при запуске, [20] выходе из системы или только в течение или в течение указанного времени. Выражения XPath можно использовать для фильтрации событий из журнала событий Windows . Задачи также могут быть отложены на указанное время после возникновения события-триггера или повторяться до тех пор, пока не произойдет какое-либо другое событие. Также можно настроить действия, которые необходимо выполнить в случае сбоя задачи. Действия, которые можно выполнить в ответ на триггеры, как основанные на событиях, так и на времени, включают не только запуск приложений, но и выполнение ряда пользовательских действий. Планировщик задач включает ряд встроенных действий, охватывающих ряд приложений; включая отправку электронной почты, отображение окна сообщения или запуск обработчика COM при его запуске. Пользовательские действия также можно указать с помощью API планировщика задач. Планировщик задач хранит журнал истории всех деталей выполнения всех задач. [21] Windows Vista использует планировщик задач 2.0 для запуска различных задач системного уровня; [22] следовательно, служба планировщика задач больше не может быть отключена (за исключением простой настройки реестра).
Task Scheduler 2.0 предоставляет API , позволяющий компьютерным программам и скриптам создавать задачи. [19] [23] Он состоит из 42 COM- интерфейсов . [24] Однако Windows API не включает управляемую оболочку для Task Scheduler, хотя существует реализация с открытым исходным кодом. [25] Файлы заданий для Task Scheduler 2.0 основаны на XML и понятны человеку, в соответствии со схемой Task Scheduler . [19] [23]
Другие особенности
Новые функции безопасности, включая использование Credential Manager для паролей для задач на компьютерах рабочей группы и использование Active Directory для учетных данных задач на компьютерах, присоединенных к домену, чтобы их нельзя было легко извлечь. Кроме того, запланированные задачи выполняются в своем собственном сеансе, а не в том же сеансе, что и системные службы или текущий пользователь.
Возможность удаленного пробуждения компьютера или использования таймера BIOS из режима сна или гибернации для выполнения запланированной задачи или запуска ранее запланированной задачи после включения компьютера.
Служба Task Scheduler работает, управляя Tasks ; Task относится к действию (или действиям), выполняемым в ответ на триггер(ы). Задача определяется путем связывания набора действий, которые могут включать запуск приложения или выполнение некоторых настраиваемых действий, с набором триггеров, которые могут быть основаны на времени или событиях. Кроме того, задача также может содержать метаданные, которые определяют, как будут выполняться действия, такие как контекст безопасности, в котором будет выполняться задача. Задачи сериализуются в .jobфайлы и хранятся в специальной папке под названием Task Folder , организованной в подкаталоги. Программно доступ к папке задачи осуществляется с помощью ITaskFolderинтерфейса или TaskFolderобъекта скрипта, а к отдельным задачам — с помощью IRegisteredTaskинтерфейса или RegisteredTaskобъекта. [26]
Столбец «Последний результат»
В столбце Последний результат отображается код завершения. Общие коды для запланированных задач: [27] [28]
0 или 0x0: Операция завершена успешно.
1 или 0x1: Вызвана неправильная функция или неизвестная функция.
2 или 0x2: Файл не найден.
10 или 0xa: Неверная среда.
0x00041300: Задача готова к запуску в следующее запланированное время.
0x00041301: Задача в данный момент выполняется.
0x00041302: Задача отключена.
0x00041303: Задача еще не запущена.
0x00041304: Для этой задачи больше не запланировано запусков.
0x00041305: Не задано одно или несколько свойств, необходимых для выполнения этой задачи.
0x00041306: Последний запуск задачи был прерван пользователем.
0x00041307: Либо у задачи нет триггеров, либо существующие триггеры отключены или не установлены.
0x00041308: Триггеры событий не имеют установленного времени выполнения.
0x80010002: Вызов был отменен фильтром сообщений
0x80041309: Триггер задачи не найден.
0x8004130A: Не задано одно или несколько свойств, необходимых для выполнения этой задачи.
0x8004130B: Нет запущенного экземпляра задачи.
0x8004130C: Служба планировщика заданий не установлена на этом компьютере.
0x8004130D: Не удалось открыть объект задачи.
0x8004130E: Объект либо является недопустимым объектом задачи, либо не является объектом задачи.
0x8004130F: В базе данных безопасности планировщика заданий не найдено сведений об учетной записи для указанной задачи.
0x80041310: Невозможно установить существование указанной учетной записи.
0x80041311: Обнаружено повреждение в базе данных безопасности планировщика заданий.
0x80041312: Службы безопасности планировщика заданий доступны только в Windows NT.
0x80041313: Версия объекта задачи не поддерживается или недействительна.
0x80041314: Задача настроена с неподдерживаемой комбинацией параметров учетной записи и параметров времени выполнения.
0x80041315: Служба планировщика заданий не запущена.
0x80041316: XML-файл задачи содержит неожиданный узел.
0x80041317: XML-файл задачи содержит элемент или атрибут из неожиданного пространства имен.
0x80041318: XML-файл задачи содержит значение, которое имеет неправильный формат или выходит за пределы допустимого диапазона.
0x80041319: В XML-файле задачи отсутствует обязательный элемент или атрибут.
0x8004131A: XML-файл задачи имеет неверный формат.
0x0004131B: Задача зарегистрирована, но не все указанные триггеры запустят задачу.
0x0004131C: Задача зарегистрирована, но может не запуститься. Для субъекта задачи необходимо включить привилегию пакетного входа.
0x8004131D: XML-файл задачи содержит слишком много узлов одного типа.
0x8004131E: Задачу невозможно запустить после границы окончания триггера.
0x8004131F: Экземпляр этой задачи уже запущен.
0x80041320: Задача не будет запущена, так как пользователь не вошел в систему.
0x80041321: Образ задачи поврежден или был подделан.
0x80041322: Служба планировщика заданий недоступна.
0x80041323: Служба планировщика заданий слишком занята для обработки вашего запроса. Повторите попытку позже.
0x80041324: Служба планировщика заданий попыталась запустить задачу, но задача не была запущена из-за одного из ограничений в определении задачи.
0x00041325: Служба планировщика заданий запросила запуск задачи.
0x80041326: Задача отключена.
0x80041327: Задача имеет свойства, несовместимые с более ранними версиями Windows.
0x80041328: Настройки задачи не позволяют запускать задачу по требованию.
0x80070002: Планировщик заданий не может найти файл.
0x800710E0: Оператор или администратор отклонил запрос.
0xC000013A: Приложение было завершено в результате нажатия клавиш CTRL+C.
0xC0000142: Приложение не удалось инициализировать должным образом.
Ошибки
В Windows 2000 и Windows XP, когда компьютер подготовлен для создания образа диска с помощью утилиты sysprep , он не может запускать задачи, настроенные для запуска в контексте учетной записи SYSTEM . Sysprep изменяет идентификатор безопасности (SID), чтобы избежать дублирования, но не обновляет запланированные задачи для использования нового SID. Следовательно, затронутые задачи не запускаются. Решения этой проблемы нет, но можно перепланировать затронутые задачи, чтобы обойти проблему. [29]
В Windows Vista или Windows Server 2008 следующее время выполнения, отображаемое в планировщике задач, может быть неверным. Microsoft выпустила исправление для устранения этой проблемы. [30]
Смотрите также
cron , планировщик заданий для Unix-подобных операционных систем
Ссылки
^ ab "Как включить значок запланированных задач в Windows Me". Поддержка . Microsoft . 29 января 2007 г. Архивировано из оригинала 30 января 2008 г.
^ «Поддерживайте рабочий стол Windows в форме с помощью планировщика заданий». TechRepublic . 4 января 2002 г.
^ «Что такое планировщик заданий?». Computer Hope . 30 ноября 2020 г.
↑ Al Fasoltd (29 марта 1998 г.). «Windows 98: Стабильная и быстрая, а также «новая и улучшенная»». The Syracuse Newspapers . Получено 6 октября 2007 г.
^ ab Mueller, John Paul (2010). Windows Command Line Administration Instant Reference . John Wiley & Sons . ISBN978-0470930908.
^ Уорнер, Тимоти Л. (2015). Sams Teach Yourself Windows PowerShell за 24 часа . Sams Publishing . ISBN978-0134049359.
^ "Как использовать команду AT для планирования задач". Поддержка . Microsoft . 30 октября 2006 г.
^ Клейман, Дэйв; Хантер, Лора Э. (2006). Winternals Defragmentation, Recovery, and Administration Field Guide . Elsevier . ISBN978-0080489872.
^ "Приложения, запущенные с помощью AT, не являются интерактивными". Поддержка . Microsoft . 20 февраля 2007 г. Архивировано из оригинала 29 октября 2004 г.
^ Коварт, Роберт; Книттель, Брайан (2008). Специальное издание с использованием Microsoft Windows Vista . Que Publishing . ISBN978-0789737816.
^ abc Кингсли-Хьюз, Адриан; Кингсли-Хьюз, Кэти; Рид, Дэниел (2011). Справочник программиста VBScript . John Wiley & Sons . ISBN978-1118058695.
^ Пол, Ян (5 сентября 2014 г.). «Автоматизируйте свои утренние программы с помощью планировщика задач Windows». PCWorld . Получено 15 марта 2021 г.
^ "Планировщик заданий Windows Vista". Microsoft TechNet . Microsoft . 3 марта 2006 г. Архивировано из оригинала 12 апреля 2006 г. Получено 24 апреля 2006 г.
^ "Описание запланированных задач в Windows Vista". 24 августа 2007 г. Архивировано из оригинала 22 октября 2007 г.
^ ab Kenny Kerr (октябрь 2007 г.). "Task Scheduler 2.0". MSDN . Microsoft . Архивировано из оригинала 26 декабря 2007 г. . Получено 6 октября 2007 г. .
^ "Интерфейсы планировщика заданий 2.0". MSDN . Microsoft . Получено 30 мая 2014 г. .
^ "C# API для планировщика задач 2.0". Stack Overflow . Получено 24 июля 2019 г. .
^ "Задачи (Windows)". MSDN . Microsoft . Получено 6 октября 2007 г. .
^ "Как устранить неполадки запланированных задач в Windows XP и Windows Server 2003". Поддержка . Microsoft . 22 мая 2013 г. Получено 3 сентября 2013 г.
^ "Константы ошибок и успехов планировщика заданий". MSDN . Microsoft .
^ "Запланированные задачи могут не запуститься, если вы использовали образ подготовки системы для установки Windows XP или Windows 2000". Поддержка . Microsoft . 1 июля 2004 г. Архивировано из оригинала 26 сентября 2008 г. Получено 19 мая 2012 г.
^ "Значение в поле Next Run Time в Task Scheduler неверно в Windows Vista и Windows Server 2008". Поддержка . Microsoft . 15 октября 2008 г. Архивировано из оригинала 11 декабря 2008 г.