質問: windowsバッチのサービス化後の実行エラー windwos環境で、バッチファイルをサービスに登録したのですが、エラーで実行できません。 【経緯、やりたい事、制約】 ・本当はpowershellで作ったスクリプトをサービス化して実行したい のですが、後述の同エラーが出力され、いろいろ解析しているうちに、 そもそも簡単なバッチも起動できないので、windowsのサービス登録~実行に 問題があると思い、まずはバッチを起動の仕方を質問しています。。 ・タスクスケジューラは最少の起動間隔が5分なので、ng。 1分毎に起動する要件があります。 ・ログインスクリプトは、ng。サーバ機なので、常時ログインは出来ない。 ・windowsサポートされていないフリーツール等の利用はng。セキュリティ上の制限。 【環境】 os: ・win2k8r2 ・win2k12 ※どちらでも同じ現象でした。 ログインユーザー:administrator 【実施内容】 (1)コマンドプロンプトで以下を実施。 sc create test binpath= "c:\aaaaa.bat" →正常登録 (2)サービス画面より”test”を開始。 →エラー画面が出力されます。 「ローカルコンピュータのtestサービスを開始できません。 エラー1053:そのサービスは指定時間内に開始要求または制御要求に応答しませんでした。」 →イベントには以下2つの出力がありました。 「イベントid7009 testサービスの接続を待機中にタイムアウト(30000ミリ秒)になりました。」 「イベントid7000 (画面出力と同じ内容のエラーメッセージ)」 【実行バッチ】 --aaaaa.bat---- echo aaa >>c:\aaa.txt --------------- 【対応してみたこと】 ・バッチを直接ダブルクリック。 →問題無し。 ・コマンドプロンプト上で実行。 →問題無し。 ・サービスの実行ユーザをadministratorに変更。 →エラー現象変わらす。 ・レジストリのタイムアウト値を変更。 →エラー現象変わらす。エラーメッセージ内の30000ミリ秒の値は変更されてました。 ・バッチの場所を変更。administratorのユーザディレクトリ配下等。 →エラー現象変わらす。 ・バッチおよび上位のディレクトリのセキュリティ設定をeveryoneフルコントロールに変更。 →エラー現象変わらす。 web等で探した対応は一通り、実施してみましたが、解消出来ませんでした。 以前、osは違いますが、バッチをサービス登録した記憶があるので、出来ない訳は ないかと思っているのですが。。 こちら対応方法または関連情報をお持ちの方がいらっしゃましたら、ご回答願います。 以上
回答: > タスクスケジューラは最少の起動間隔が5分なので、ng。 タスクスケジューラの『繰り返し間隔』項目は、選択肢にある もの以外の値もキーボードから直接入力できます。なので、 「1分間」でも「60秒間」でも指定すれば良いかと。 http://www.atmarkit.co.jp/fwin2k/win2ktips/1332reptsk/reptsk.html