0X00041308

SCHED_S_EVENT_TRIGGER (0X00041308) Fix for Task Scheduler

Windows Errors Intermediate 👁 6 views 📅 Jun 8, 2026

This error happens when Task Scheduler runs an event-based task but the trigger has no time constraint. Here's why and how to fix it.

You're working with Task Scheduler, you create a task that triggers on an event—say, when the System log hits Event ID 1001 or when a specific service enters Running state—and you check its status. You see SCHED_S_EVENT_TRIGGER (0X00041308). The task's state shows it's ready, but the trigger column says something like “At system startup” or “At event log entry” with no time stamp. The error code itself spells it out: “Event triggers do not have set run times.”

What's actually happening here

Task Scheduler has two types of triggers: time-based (daily, weekly, at logon) and event-based. Event triggers fire when a specific event hits the Windows Event Log. The catch is, Windows requires every trigger to have at least a time boundary—either a start date or a repetition interval. Without that, the task engine doesn't know how to schedule the trigger. It's not a bug, it's a design guardrail.

The 0X00041308 warning is informational (it's in the SCHED_S_ range, not SCHED_E_), so the task isn't broken. But on some systems, especially Windows 10 20H2 through Windows 11 23H2, the task may just sit there and never fire. The trigger isn't bound in time, so Task Scheduler's internal engine treats it as invalid and skips it.

Quick fix: Give the trigger a start date

  1. Open Task Scheduler (taskschd.msc).
  2. Find your task, right-click and pick Properties.
  3. Go to the Triggers tab, select the event-based trigger, and click Edit.
  4. Check the box Enabled (it usually is).
  5. In the Advanced settings section at the bottom, check Delay task for up to (random delay). Set it to 1 minute. This forces a time boundary.
  6. Alternatively, under Start, set a date in the past (like yesterday) and a time (e.g., 00:00:00). Then check Stop task if it runs longer than and set it to 1 hour. This also gives a time boundary.
  7. Click OK twice to save.

If you don't want a delay, the cleanest approach is option 6: a past start date with a stop duration. The task will still fire on the event, but now the engine has a time reference to anchor the trigger.

Why step 6 works

The Task Scheduler service stores triggers in the %windir%\System32\Tasks folder as XML files. An event-only trigger looks like this without a StartBoundary element. The service's internal scheduler can't process it. By adding a start date, you force the XML to include:

<StartBoundary>2025-03-10T00:00:00</StartBoundary>

That's what the engine needs. Without it, the trigger stays in a limbo state: registered but not schedulable.

Alternative: Use a repetition interval

Another route: set a repetition interval. In the trigger's Advanced settings, check Repeat task every (say, 1 hour) with a duration of 1 day. This also generates a time boundary in the XML and achieves the same result. I prefer the start date method because it's simpler and doesn't create repeated runs.

What to check if the fix doesn't work

If after adding a start date the error persists:

  • Make sure the task is enabled. Right-click and see Disable is not shown; if it says Enable, click it.
  • Check the event log path. For example, a trigger on Event ID 1001 in the System log must use exactly Microsoft-Windows-Kernel-Power/System (not just “System”). Wrong log name and the trigger never matches.
  • Run schtasks /query /v /fo LIST | findstr 0x00041308 in an admin command prompt. If you see other tasks with this error, they need the same fix.
  • On some Windows builds (e.g., 21H2), a corrupted tasks folder can cause this. Backup your tasks, then run sfc /scannow and DISM /Online /Cleanup-Image /RestoreHealth.

One more thing: if you imported the task from another machine and it had no start date, the XML might be malformed. Check the file directly at C:\Windows\System32\Tasks\YourTaskName and look for a missing StartBoundary. If it's missing, edit the XML manually with admin rights—but only do this if you're comfortable with the format.

The bottom line: 0X00041308 isn't a fatal error, but it's a sign your event trigger is unanchored. Give it a time boundary and you're good.

Was this solution helpful?