「Windows10で1時間おきにBATファイルを実行する。」に2017/12/05に追記した記事を、長くなったのでここへ移した。
何も考えずに「毎日」の設定にしていたが、タスクの起動時刻として設定した時刻にPCが起動していないと以後一度も実行されないようだ。
繰り返し間隔を「1時間」、継続時間を「無期限」にしてもダメだ。
その場合は「タスク」そのものが実行されていない扱いになるらしい。
で、設定を「毎日」でなく「1回」にし、時刻は直近の正時にしてみた。
繰り返し間隔を「1時間」、継続時間を「無期限」はそのままだ。
例えば、上の設定で指定してある2017/12/05 20:00:00より前に[OK]をクリックして設定を済ませる。
他の設定も載せておく。
下は、同様の設定で1時間毎でなく5分毎にしてみた場合の履歴だ。
6時以降にシャットダウンして13時過ぎに起動した場合、起動直後のまだログインしていないときにエラーが記録されるが、ログインすればその後は期待通りに実行され続ける。
エラーメッセージは、
起動条件が満たされたときにユーザー ######## がログオンしていなかったため、タスク スケジューラはタスク ######## を起動しませんでした。ユーザー操作: ユーザーがログオンしていることを確認するか、ユーザーがログオフしているときに起動を許可するようにタスクの定義を変更します。
というもので、今回の設定では起動-ログイン間にそうなるのは折り込み済みなので構わない。
1時間毎の設定の例も下に示す。
起動直後に上と同じ理由で1回エラーが記録されている。
それを除けば、あとは期待通りに実行されている。
追記(2017/12/07)
設定時から2度のシャットダウン、再起動を経たが問題なく期待通りの動作をしている。
「1回」「無期限」で良かったようだ。
ただし、タスクの起動予定時刻より前に設定を済ませること。
追記(2017/12/10)
同上、問題無し。
追記(2018/08/31)
久しぶりに見たら、自分の追加したタスクはどこ?ってなったので覚書き。
別窓が開くので以下のようにクリックして
出てきた窓で編集する。
追記(2020/05/04)
久しぶりに見たら、タスクスケジューラはどこ?ってなったので覚書き。
追記(2021/12/14)
久しぶりにタスクを登録した。
上の記事の通りで問題なかった。