タスクスケジューラで実行履歴が空白でも、タスクが一度も動いていないとは限りません。履歴記録の設定、表示対象タスク、イベントログの状態を分けて確認します。

タスク状態と履歴表示を区別

タスクスケジューラを開き、問題のタスクを選んで[状態][前回の実行時刻][前回の実行結果]と[履歴]タブを別々に確認します。履歴タブが空でも、最後の実行時刻がある場合があります。手動実行で結果が残るか確認するときは、実処理に副作用がないテスト用タスクだけを対象にしてください。

履歴が有効になっているか確認

タスクスケジューラの操作メニューに履歴を有効化する選択肢がある場合、現在の設定を確認します。履歴が無効だった期間の情報を後から作り直せるとは限りません。設定を変更する前に管理ポリシーや監査設定の制限を確認し、会社PCなら管理者へ相談します。

イベントログと最終実行結果の参照

イベントビューアーでは[アプリケーションとサービス ログ]→[Microsoft]→[Windows]→[TaskScheduler]→[Operational]を確認できます。PowerShellでは Get-WinEvent -LogName 'Microsoft-Windows-TaskScheduler/Operational' -MaxEvents 20 のように取得できますが、アクセス権が必要な場合があります。イベントが記録されているかと、対象タスクが正常に完了したかは別です。

記録できない条件を切り分ける

履歴が空白なら、ログが無効、権限不足、過去ログの保持条件、タスクの実行条件などを切り分けます。たとえば起動時刻にPCがスリープしていた、条件が満たされなかった、タスク自身のスクリプトが失敗した、などはそれぞれ別の調査です。今後の証跡を強くしたいなら、実行するスクリプト側にも日時と終了コードを残す設計を検討してください。

参考資料

おすすめの記事