- ベストアンサー
サービスの起動を確認したい
知識が無いため、やりたいことが実現できません。どなたか知恵を貸してください。 Windows XP SP2のパソコンであるサービスが起動したのを確認した後に停止したいと思っています。サービスの停止は”net stop サービス名”で実現できるので、その前の処理の実現方法を教えて下さい。 但し、フリーソフト、有料ソフト等はNGです。VBスクリプト?だとメモ帳にプログラミングすれば出来るようなことをインターネットで見つけましたが良く分かりませんでした。 よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
以下のようなスクリプトでいいでしょう --- SampleCheck.vbs --- dim objWs, objState, ss, args, cnt ' 引数を取得 set args = WScript.Arguments if args.count > 0 then Set objWs = CreateObject("WScript.Shell") Set objState = objWs.Exec( "%comspec% /c net start | find """ + args(0) + """" ) cnt = 0 do ss = objState.StdOut.ReadLine() ss = trim( ss ) if ss = "" then ' 終了用条件 cnt = cnt + 1 elseif ss = args(0) then ' WScript.Echo "サービス(" + args(0) + ")は起動しています" Exit Do end if loop while cnt < 2 end if ---- ここまで ---- 起動方法はコマンドプロンプトで cscript SampleCheck.vbs サービス名 といった具合です サービス名は net start で表示される文字列を指定します スペースなどの入るサービス名は""でくくります Terminal Servicesならば "Terminal Services" といった具合です
その他の回答 (1)
- nfushi
- ベストアンサー率31% (39/122)
[コントロールパネル]-[管理ツール]-[サービス]から目視確認で停止はダメなんですか?
お礼
テキストエディタで確認下ところ、スペースが全角でした。 半角にしたところうまくいきました。ありがとうございました。
補足
早速のご回答ありがとうございます。 本文をコピペしてSampleCheck.vbsで保存して コマンドプロンプトからcscript SampleCheck.vbs サービス名で 実行しましたが、”C:\Temp\SampleCheck.vbs(5, 1)MicrosoftVBScript コンパイル エラー: 文字が正しく ありません。”となります。 なぜでしょうか?ご教示下さい。