Windows Task Scheduler: Difference between revisions
+ Tray icon and implementation info |
No edit summary |
||
Line 3: | Line 3: | ||
==Versions== |
==Versions== |
||
===Task Scheduler 1.0=== |
===Task Scheduler 1.0=== is almost the same as task scheduler 2.0 ( just you can disable this one :) ) |
||
Task Scheduler 1.0 is included with [[Windows 2000]], [[Windows XP]] and [[Windows Server 2003]].<ref name="about">{{cite web | url = http://msdn2.microsoft.com/en-us/library/aa446802.aspx | title = About the Task Scheduler | accessdate = 2007-10-06}}</ref> It runs as a [[Windows Service]], and the task definitions and schedules are stored in [[binary]] <code>.job</code> files. Tasks are manipulated directly by manipulating the <code>.job</code> files. Each task corresponds to single action. On [[Windows 95]], [[Windows 98]] and [[Windows Me]], the Task Scheduler runs as an application (mstask.exe). It also displays a status icon in the notification area on Windows 95 and Windows 98 and runs as a hidden application on Windows Me. On the [[Windows NT]] family of operating systems, it is implemented as a [[Windows service]]. |
Task Scheduler 1.0 is included with [[Windows 2000]], [[Windows XP]] and [[Windows Server 2003]].<ref name="about">{{cite web | url = http://msdn2.microsoft.com/en-us/library/aa446802.aspx | title = About the Task Scheduler | accessdate = 2007-10-06}}</ref> It runs as a [[Windows Service]], and the task definitions and schedules are stored in [[binary]] <code>.job</code> files. Tasks are manipulated directly by manipulating the <code>.job</code> files. Each task corresponds to single action. On [[Windows 95]], [[Windows 98]] and [[Windows Me]], the Task Scheduler runs as an application (mstask.exe). It also displays a status icon in the notification area on Windows 95 and Windows 98 and runs as a hidden application on Windows Me. On the [[Windows NT]] family of operating systems, it is implemented as a [[Windows service]]. |
||
Revision as of 04:30, 6 December 2007
Task Scheduler is a component of Microsoft Windows that allows users to schedule launch of programs or scripts at pre-defined times or after specified time intervals. It was introduced first in the Windows 95 Plus! pack as System Agent [1] but was renamed to Task Scheduler in Windows 98.
Versions
===Task Scheduler 1.0=== is almost the same as task scheduler 2.0 ( just you can disable this one :) )
Task Scheduler 1.0 is included with Windows 2000, Windows XP and Windows Server 2003.[2] It runs as a Windows Service, and the task definitions and schedules are stored in binary .job
files. Tasks are manipulated directly by manipulating the .job
files. Each task corresponds to single action. On Windows 95, Windows 98 and Windows Me, the Task Scheduler runs as an application (mstask.exe). It also displays a status icon in the notification area on Windows 95 and Windows 98 and runs as a hidden application on Windows Me. On the Windows NT family of operating systems, it is implemented as a Windows service.
Task Scheduler 2.0
Task Scheduler 2.0 was introduced with Windows Vista and included in Windows Server 2008 as well.[2] The redesigned Task Scheduler is now based on Management Console. In addition to running tasks on scheduled times or specified intervals, Task Scheduler 2.0 also supports calendar and event-based triggers, such as starting a task when a particular event is logged to the event log, or when a combination of events has occurred. Also, several tasks that are triggered by the same event can be configured to run either simultaneously or in a pre-determined chained sequence of a series of actions, instead of having to create multiple scheduled tasks. Tasks can also be configured to run based on system status such as being idle for a pre-configured amount of time, on startup, logoff, or only during or for a specified time. XPath expressions can be used to filter events from the Windows Event Log. Tasks can also be delayed for a specified time after the triggering event has occurred, or repeat until some other event occurs. Actions that need to be done if a task fails can also be configured. The actions that can be taken in response to triggers, both event-based as well as time-based, not only include launching applications but also take a number of custom actions. Task Scheduler includes a number of actions built-in, spanning a number of applications; including send an e-mail, show a message box, or fire a COM handler when it is triggered. Custom actions can also be specified using the Task Scheduler API. Task Scheduler keeps a history log of all execution details of all the tasks. [3]. Windows Vista uses Task Scheduler 2.0 to run various system-level tasks, as such, the Task Scheduler service cannot be disabled any more.
Unlike Task Scheduler 1.0, Task Scheduler 2.0 exposes an API to programmatically create tasks. It is accessed via the ITaskService
COM interface.[4] The Windows API does not, however, include a managed wrapper for Task Scheduler. The Task Scheduler API is also exposed for scripting languages, including VBScript, JScript and Windows PowerShell.[5] The job files for Task Scheduler 2.0 are XML-based, and are human-readable, conforming to the Task Scheduler Schema.[4] While it is possible to create the job files by hand, Microsoft advises not to do so, but use the Task Scheduler API. A command line utility for using Task Scheduler is also provided in terms of the schtasks.exe
utility.[6]
Other features
- New security features, including using Credential Manager to store passwords for tasks on workgroup computers and using Active Directory for task credentials on domain-joined computers so that they cannot be retrieved easily. Also, scheduled tasks are executed in their own session, instead of the same session as system services or the current user.
- Ability to wake up a machine remotely or using BIOS timer from sleep or hibernation to execute a scheduled task or run a previously scheduled task after a machine gets turned on.
- Ability to attach tasks to events directly from the Event Viewer.
Tasks
The Task Scheduler service works by managing Tasks; Task refers to the action (or actions) taken in response to trigger(s). A task is defined by associating a set of actions, which can include launching an application or taking some custom-defined action, to a set of triggers, which can either be time-based or event-based. In addition, a task also can contain metadata that defines how the actions will be executed, such as the security context the task will run in. Tasks are serialized to .job
files and are stored in the special folder titled Task Folder, organized in subdirectories. Programmatically, the task folder is accessed using the ITaskFolder
interface or the TaskFolder
scripting object and individual tasks using the IRegisteredTask
interface or RegisteredTask
object.[7]
See also
References
- ^ Al Fasoltd. "Windows 98: Stable and fast, as well as 'new and improved'". The Syracuse Newspapers. Retrieved 2007-10-06.
- ^ a b "About the Task Scheduler". Retrieved 2007-10-06.
- ^ "Windows Vista Task Scheduler". Microsoft TechNet. March 3 2006. Retrieved 2006-04-24.
{{cite web}}
: Check date values in:|year=
(help)CS1 maint: year (link) - ^ a b Kenny Kerr. "Task Scheduler 2.0". MSDN. Retrieved 2007-10-06.
- ^ "Task Scheduler Reference". Retrieved 2007-10-06.
- ^ "Schtasks.exe (Windows)". Retrieved 2007-10-06.
- ^ "Tasks (Windows)". MSDN. Retrieved 2007-10-06.
External links