• ベストアンサー

サービスの起動を確認したい

知識が無いため、やりたいことが実現できません。どなたか知恵を貸してください。 Windows XP SP2のパソコンであるサービスが起動したのを確認した後に停止したいと思っています。サービスの停止は”net stop サービス名”で実現できるので、その前の処理の実現方法を教えて下さい。 但し、フリーソフト、有料ソフト等はNGです。VBスクリプト?だとメモ帳にプログラミングすれば出来るようなことをインターネットで見つけましたが良く分かりませんでした。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.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" といった具合です

ittope
質問者

お礼

テキストエディタで確認下ところ、スペースが全角でした。 半角にしたところうまくいきました。ありがとうございました。

ittope
質問者

補足

早速のご回答ありがとうございます。 本文をコピペしてSampleCheck.vbsで保存して コマンドプロンプトからcscript SampleCheck.vbs サービス名で 実行しましたが、”C:\Temp\SampleCheck.vbs(5, 1)MicrosoftVBScript コンパイル エラー: 文字が正しく ありません。”となります。 なぜでしょうか?ご教示下さい。

その他の回答 (1)

  • nfushi
  • ベストアンサー率31% (39/122)
回答No.1

[コントロールパネル]-[管理ツール]-[サービス]から目視確認で停止はダメなんですか?

関連するQ&A