今まで Windows XP のタスクスケジューラで、毎日一定時刻にバックアップを取るようにしていたが、
PC の劣化に伴い、データ載せ替えの際、OS を Windows 7 にした。
データの移行は、NIC 同士を LAN ケーブルでつないで、手動で IP アドレスを設定し、フォルダ共有で
ファイルを受け渡しするという単純作業で楽にできた。
タスクスケジューラで使用していたバッチファイルもコピーし、なんとなくタスクを設定してみたが、
翌朝動作を確認したら、コピーできていなかった。
ここで、散々設定を見直したり、ヘルプを見たり、ググったりしてみたが、一向に解決できず。
丸一日かけてどうやら解決策が判明したっぽいので備忘録として記す。
かなりハマった上に、情報の少なさときたら!
とりあえず色々と試行錯誤したところ、下記でうまくいった。
タスクスケジューラの起動:[スタート]-[管理ツール]-[タスク スケジューラ]
新しいタスクの作成:
[全般] タブ:
[名前] には分かりやすい名前を。「夜間バックアップ」とか。。
(後で変更できないっぽい。C:\Windows\System32\Tasks にあるファイル名を変更すれば可能? 未検証。)
(※[最上位の特権で実行する] にチェックを入れると、バッチファイル内でフォルダを作ったりするとアクセス権が設定されてしまう。)
[全般] タブ:
[ユーザーがログオンしているかどうかにかかわらず実行する]?にチェック
[トリガー] タブ:
[新規] で、[スケジュールに従う] / [毎日] / [有効]
[操作] タブ:
[プログラムの開始]
[プログラム/スクリプト] に実行したいバッチファイルのフルパス ("C:\Program Files (x86)\FastCopy\NightlyBackup.bat" など)
[開始(オプション)] に上記で指定したバッチファイルの作業フォルダを入れる。※パスにスペースがあったとしても、ここではダブルクォーテーションを入れてはダメ。
[履歴] タブは規定では無効となっているが、タスクスケジューラのメイン画面右側にある「操作」ウィンドウ内の「すべてのタスク履歴を有効にする」を選択することで有効になる。
(※この設定はここ以外からは設定できなさげ。起動時のウィンドウサイズでは、ここのテキストが省略され、読めなくなっていたため、ヘルプを見てもどこに設定があるか見つけられなかった。)
上記まで入力後、OK ボタンを押下すると、実行ユーザーの認証用パスワードを要求され、正しく入力するとタスクが正常に追加される。
追加したタスクの有効/無効の切り替えなどは、プロパティを開いても変更できるが、先ほどの「操作」ウィンドウで変更した方が便利。
?
さて、これでうまくいくはずだ。