| Previous | Next |
| SCHED_E_TASK_ATTEMPTED | SCHED_E_TASK_NOT_V1_COMPAT |
SCHED_E_TASK_DISABLED
The registered task is disabled
SCHED_E_TASK_DISABLED is the failure HRESULT 0x80041326 (-2147216602 as a signed 32-bit value). Its severity bit is set, the facility field is 4 (FACILITY_ITF), and its facility-specific code is 0x1326. AllStat describes the result as “The task is disabled.”
Operation and state
Microsoft explicitly documents that IRegisteredTask::Run returns this HRESULT for a disabled task. The scheduler has found a valid registration; the block is an administrative state on that task rather than a missing trigger, stopped service or action failure. In practical terms, this result is returned when a caller attempts to run a registered task whose enabled state is false. Preserve it symbolically because a generic COM failure path loses its scheduler-specific recovery decision.
Failure paths to examine
- An administrator or product deliberately disabled the task during maintenance or incident response.
- An installer created the task disabled until configuration or licensing completed.
- A volatile or cluster-managed task was disabled by lifecycle policy and has not been re-enabled.
- A previous failure handler disabled the task to prevent repeated damaging execution.
- Configuration drift changed the enabled property while the caller assumed the task remained active.
Rank these explanations for it by matching them to the exact method, target and scheduler state observed at failure time.
Data to collect before changing anything
- Registered task path and current Enabled property.
- Task XML settings, registration metadata and author or product owner.
- Task Scheduler Operational events and configuration-management audit trail for the state change.
- Whether individual triggers are also disabled or outside their boundaries.
- The business or safety condition that must be true before execution is allowed.
The decisive question for it is not whether Task Scheduler works in general, but which object, service state, compatibility rule or execution instance owned the failed operation. Before reacting to this result, collect evidence rather than restarting services, rewriting task XML or changing security settings.
Step-by-step diagnosis
- Read the registered task’s current enabled state immediately before the run request.
- Identify who or what disabled it and whether the state is expected policy.
- Validate the principal, action, triggers and environmental prerequisites before changing the state.
- Enable the task through IRegisteredTask or supported administration tooling only when authorized.
- Run once under observation and confirm that policy did not disable it again.
Retry policy and restoration
Retrying Run while the task remains disabled is pointless. Enable it only as an explicit policy change, then issue a new run request. If temporary execution is needed but permanent enabling is unsafe, use a separately reviewed operational procedure rather than silently changing production configuration. The owner of the higher-level workflow should define whether this result is terminal, retryable after a state change, or converted into an administrative action.
Limits of this HRESULT
A disabled task is not necessarily misconfigured. This HRESULT does not say that its triggers are invalid, that demand start is disallowed, or that the action executable cannot run. Logging only the decimal value without task path, method and target computer is insufficient to explain this result.
Neighboring status codes
SCHED_S_TASK_DISABLED can report disabled state as a status value, while it rejects an operation such as immediate Run. SCHED_E_TASK_ATTEMPTED indicates configured constraints prevented a launch attempt.
Concrete troubleshooting case
A backup task was disabled during storage maintenance. An automation platform tries to run it and receives this code. Audit records confirm the maintenance owner, storage is validated, the task is re-enabled through the scheduler API, and only then is a new backup run requested. A regression test should reproduce it, assert the code-specific evidence, then change only the decisive condition and verify the expected recovery.
Official Microsoft references
- Microsoft: Task Scheduler error and success constants
- Microsoft: IRegisteredTask::Run
- Microsoft: IRegisteredTask::put_Enabled
- Microsoft: IRegisteredTask
Looking for a different code? Search another status or error code.