タスクスケジューラからのバッチ起動が不安定
Windows2008 Serverのタスクスケジューラでバッチ処理を実行していが、
時間通り実行してくれる時もあるが、突然、全く動作しなくってしまうこともあり少々困っていた。
本番で使っているサーバであるため、いじくりまわすこともできず、手動で実行することで逃げていた。
といいつつ、手動で実行するのもめんどくさくなり、見直してみると...
突然停止するのはBATファイルのみで、VBSは停止していないことに気付いた。
で、BATファイルのタスクでの起動はあきらめて、VBSでバッチ処理を起動する方法に変更してみた。
結果は、今のところ安定して起動しているようで、しばらく様子をみたいと思います。
下記は、VBSからバッチ処理を起動するサンプルです。EXECとRUNメソッドの2種類の方法があるようですが、
参考のページに詳しいことが書かれています。
◆サンプル1 Set objWshShell = WScript.CreateObject("WScript.Shell") strCmdLine = "C:\test.bat" objWshShell.Run(strCmdLine) ◆サンプル2 Set objWshShell = WScript.CreateObject("WScript.Shell") strCmdLine = "C:\test.bat" set objExec? = objWshShell.Exec(strCmdLine) Do While objExec.Status = 0 WScript.Sleep(1000) Loop
◆参考になったページ
Windows管理者のためのWindows Script Host入門