************************************************************* * 【list.vbs】 * 現在実行中のサービスの一覧より、停止対象を決定する為の * テキストファイル( target.txt ) を作成する * * 【stop.vbs】 * target.txt で指定したサービスを停止する ************************************************************* 1) list.vbs をエクスプローラから実行して下さい 2) target.txt の中から停止したいサービス名の先頭のセミコロン を削除して下さい 3) stop.vbs をエクスプローラから実行して下さい ※ 再度 list.vbs を実行すると、target.txt に無いサービスを 発見した場合は、リストの最後に追加します ※ サービスの依存関係は、上に依存元のサービスを持ってきて下さい。 ※ 最初の作成では、全ての実行中のサービスリストが作成されますが、 先頭にセミコロンが入ったままでは、stop.vbs を実行しても何も 停止されません。 ■著作権その他 このプログラムはフリーです。どうぞ自由に御使用ください。 著作権は作者である私が保有しています。 また、本ソフトを運用した結果については、作者は一切責任を 負えせんのでご了承ください。 lightboxstop_service_started.vbs
' 管理者として実行を強制する
Set obj = Wscript.CreateObject("Shell.Application")
if Wscript.Arguments.Count = 0 then
obj.ShellExecute "cscript.exe", WScript.ScriptFullName & " runas", "", "runas", 1
Wscript.Quit
end if
str = WScript.FullName
str = Right( str, 11 )
str = Ucase( str )
if str <> "CSCRIPT.EXE" then
strMessage = "エクスプローラから実行する場合は、stop.vbs を使用して下さい"
WScript.Echo strMessage
WScript.Quit
end if
Set Fso = Wscript.CreateObject( "Scripting.FileSystemObject" )
strCurPath = WScript.ScriptFullName
Set obj = Fso.GetFile( strCurPath )
Set obj = obj.ParentFolder
strCurDir = obj.Path
strServer = "."
on error resume next
Set objLocator = CreateObject("WbemScripting.SWbemLocator")
if Err.Number <> 0 then
Wscript.Echo Err.Description
Wscript.Quit
end if
Set objWmi = objLocator.ConnectServer( _
strServer, _
"root\cimv2", _
strUser, _
strPass )
if Err.Number <> 0 then
Wscript.Echo Err.Description
Wscript.Quit
end if
objWmi.Security_.ImpersonationLevel = 3
if Err.Number <> 0 then
Wscript.Echo Err.Description
Wscript.Quit
end if
on error goto 0
Set InObj = Fso.OpenTextFile( strCurDir & "\target.txt", 1 )
aTarget = Split( InObj.ReadAll(), vbCrLf )
InObj.Close()
For I = 0 to UBound( aTarget )
if Trim( aTarget( I ) ) <> "" and Left( aTarget( I ), 1 ) <> ";" then
strQuery = "select * from Win32_Service where Name = '" & aTarget(I) & "'"
Set objTarget = objWmi.ExecQuery( strQuery )
on error resume next
For Each obj in objTarget
if obj.Started then
obj.StopService()
Wscript.Echo obj.Name & " を停止させました"
end if
Next
on error goto 0
' 終了待ち
nCnt = 0
Do while true
Wscript.Sleep 1000
Set objTarget = objWmi.ExecQuery( strQuery )
For Each obj in objTarget
strResult = obj.State
Next
if strResult = "Stopped" then
Exit Do
end if
nCnt = nCnt + 1
if nCnt > 60 then
Exit Do
end if
Loop
end if
Next
|
|
【VBScriptの最新記事】
- 【VBS】WshShell.Runによる外部プログラムの実行のバリエーションと注意事項
- VBScript で GUID 生成
- Windows 標準の CDO.Message で(GmailまたはYahoo!メールを使って)簡単にバッチ処理からメールを送る
- バックアップスクリプトを作るスクリプト
- バッチ処理の為の .wsf スケルトン / cscript.exe での実行を強制する / 自分自身の呼び出し
- 【VBS + Excel】シンプルな詳細設計書のフォーマット。1) Excel のダウンロード、2) VBScript で作成するサンプル
- VBScript : CAPICOM を使った通常文字列の Base64エンコードと SHA1 と MD5 と SHA256/384/512
- 【VBS汎用】SHIFT_JISデータを各種キャラクタセットのテキストファイルへ変換
- VBScript : デスクトップの列挙
- Excel シートから Basp21 を使用してメールの送受信をして、今後の何かに役立てる
- VBScript + clipコマンド + レジストリ登録で、エクスプローラのディレクトリの右クリックでファイル名のリストをクリップボードにコピーできるようにする
- VBScript(WMI) : OSの情報をコマンドプロンプトに一覧で表示する
- VBScript(WMI) : 共有一覧
- IE のお気に入りディレクトリにあるファイルの表示・非表示を設定する / HTA(HTML アプリケーション)
- VBScript : ディレクトリ内のディレクトリで使用している容量一覧
- VBScript(WMI) : システム環境変数の変更を監視する event_change_reg.wsf
- VBScript : スクリプトが存在するディレクトリをユーザ環境変数の PATH へ登録
- XMLファイルの書き換え (VBScript)
- VBScript から実行する PHPコードの PDF処理のサンプル
- Cscript.exe の引数と、Windows Script Host を無効にするレジストリ設定





























