Windows プラットフォーム サポートの佐々木です。
タスク スケジューラにスケジュールした、第 2 週/第 4 週のタスクが、14 日、または 28 日に該当する場合、タスクが 1 週前にずれて実行される動作を確認しており、発生条件詳細や、発生原因については、現在調査中になります。調査状況に進展があり次第、本ブログにて情報をアップデート予定です。
以下は、第 2 週/第 4 週にスケジュールされたタスク (青丸) を例とした、実際のタスクが開始される日 (赤丸)、スケジュールどおりにタスクが実行される日 (緑丸) は、以下のとおりになります。
この動作は、以下の OS で発生する事象であることを確認しております。
・Windows 10 Version 1511
・Windows 10 Version 1607
・Windows 10 Version 1703
・Windows 10 Version 1709
以下の OS では発生しないことを確認しております。
・Windows 7
・Windows 8.1
・Windows 10 Version 1507
回避策
現在、OS の設定変更などによる回避策は確認できておりません。
回避策が判明次第、本ブログにて情報を更新いたします。
恐れ入りますが、タスクのトリガーを [毎週] に設定いただいた上で、現在の日付が第何週目であるかを計算するバッチ ファイルなどを登録いただき、該当する曜日にのみ、開始したいアプリケーションや、スクリプトを実行するなどのご検討をお願いいたします。
事象が再現するシナリオ
本事象が発生するシナリオについて、第 2 週の金曜日が 14 日に該当する 2017 年 7 月を例にして説明します。
1. 新しいタスクを作成します。
[新しいトリガー] 画面にて、以下の設定を行います。
設定: “毎月”
開始: <2017/06/30> <13:00:00>
月: “すべての月を選択”
曜日: <“第 2” “第 4”> <金曜日>
※ タスク作成時の [次回実行時刻] は、”2017/07/14 13:00:00″ になっています。
2. 2017 年 7 月 7 日 13:00 (第 1 金曜日) のタスクの状況です。
※ 13:00 になると、タスクが開始されます。(本来実行される日時ではありません。)
※ [次回実行時刻] は、”2017/07/14 13:00:00″ のままです。
3. 2017 年 7 月 14 日 13:00 (第 2 金曜日) のタスクの状況です。
※ 13:00 になっても、タスクは開始されません。(本来タスクが実行される日時です。)
※ [次回実行時刻] は、”2017/07/28 13:00:00″ に更新されます。
4. 2017 年 7 月 21 日 12:58 (第 3 金曜日) のタスクの状況です。
※ 13:00 になると、タスクが開始されます。(本来実行される日時ではありません。)
※ [次回実行時刻] が、”2017/07/28 13:00:00″ のままです。
5. 2017 年 7 月 28 日 13:00 (第 4 金曜日) のタスクの状況です。
※ 13:00 になっても、タスクは開始されません。(本来タスクが実行される日時です。)
※ [次回実行時刻] が、”2017/08/11 13:00:00″ と表示されます。
8 月 11 日と 8 月 25 日は期待どおりにタスクが開始されます。