• 20260518 29873a104e

    20260518 Stable

    jcf released this 2026-05-18 12:22:49 +00:00 | 3 commits to main since this release

    fix: sub-minute delay support via Register-ScheduledTask + full task path fixes

    task-scheduler-manager v2.2.6 / tsm-export v1.8.1 / Makefile v1.4.0

    Fixes since last commit

    Delay handling

    • schtasks /delay rejects sub-minute values (minimum 1 minute)
    • Sub-minute delays (e.g. 00:05) now use Register-ScheduledTask
      with ISO 8601 duration: $trigger.Delay = 'PT5S'
    • Delays >= 1 minute use schtasks /delay with correct mmmm:ss format
    • 00:00 delay omits /delay entirely (was causing schtasks error)
    • Fix applied in both single-task installer (buildPs1) and
      diff installer (addCreateBlock in buildDiffPs1)

    Full task path in all schtasks calls

    • Tasks in subfolders (e.g. \GoogleUser\GoogleUpdater) were failing
      because bare task name was used instead of full path
    • All schtasks /create, /delete, /query, /change now use
      taskPath + taskName as fully qualified task name

    Ghost task filter in tsm-export.ps1

    • Get-ScheduledTask can return stale cache entries for deleted tasks
    • Each task now validated via schtasks /query before export
    • Stale entries logged as [WARN] and skipped

    Self-elevating .ps1 installers

    • Replaced .bat installers with self-elevating .ps1
    • UAC prompt triggers automatically on double-click
    • schtasks /create /sc onlogon requires elevation on Windows 10/11
      regardless of task privilege level (Windows restriction)

    Diff installer

    • Generates tsm-diff-install_YYYYmmdd-HHMMSS.ps1 (was .bat)
    • Applies changes to tool task list immediately on generation
    • Handles ADD, REMOVE, MODIFY, STATUS-only c
    Downloads