maruton's memorandum
ここはブログ作成時にやったことのメモや今まで作ったスクリプトなどをおぼえがき程度にまとめておくところ。
ページ
ホーム
Blogger Tips
HTML Tips
Script
Windows Tools
OS Tips
IT日記
WordPress
Security
Other
★
プライバシーポリシー
ページ
暗号通貨でサポート
カルダノSPO
Amazonほしい物リスト
2012年11月23日金曜日
[Script][VBS]Windowsサービスの処理を行う(Win32_Service)
Windowsのサービスを停止したり、起動したり、スタートアップの設定を変更したりします。
時刻同期のサービス(W32Time)を使ってやっています。
W32Time起動
strComputer = "."
Service_Name = "W32Time"
Set wbemServices = GetObject("winmgmts:\\" & strComputer)
Set ServiceSet = wbemServices.ExecQuery _
("Select * from Win32_Service where Name = """ & Service_Name & """")
for each Service in ServiceSet
'サービスのスタートアップを自動に設定
RetVal = Service.ChangeStartMode("Automatic")
'サービスを開始
RetVal = Service.StartService()
'サービスが既に開始されていたか判断
if RetVal = 10 then
'サービスを停止
RetVal = Service.StopService()
Wait_Stopping_Service
WScript.Sleep 1000
'サービスを開始
RetVal = Service.StartService()
end if
next
Sub Wait_Stopping_Service
Do While 1
Set ServiceSet = wbemServices.ExecQuery _
("Select * from Win32_Service where Name = """ & Service_Name & """")
for each Service in ServiceSet
If Service.State = "Stopped" Then Exit Do
next
WScript.Sleep 100
Loop
End Sub
W32Time状態取得
Service_Name = "W32Time"
Set wbemServices = GetObject("winmgmts:\\." & strComputer)
Set ServiceSet = wbemServices.ExecQuery _
("Select * from Win32_Service where Name = """ & Service_Name & """")
for each Service in ServiceSet
strMsg = "状態:" & vbTab & Service.state
strMsg = strMsg & vbCrLf & "起動:" & vbTab & Service.StartMode
next
Set WshShell = WScript.CreateObject("WScript.Shell")
NtpServer = WshShell.RegRead("HKLM\SYSTEM\CurrentControlSet\Services\" & _
Service_Name & "\Parameters\ntpserver")
If Trim(NtpServer) = "" Then NepServer = "未設定"
strMsg = strMsg & vbCrLf & "時刻同期サーバ:" & vbCrLf & vbTab & NtpServer
MsgBox strMsg, vbOkOnly, Service_Name
W32Time停止
'W32Time = Trend Server Protect
strComputer = "."
Set wbemServices = GetObject("winmgmts:\\" & strComputer)
Set ServiceSet = wbemServices.ExecQuery("Select * from Win32_Service where Name = ""W32Time""")
for each Service in ServiceSet
RetVal = Service.StopService()
RetVal = Service.ChangeStartMode("Manual")
next
Script のページに戻る
0 件のコメント:
コメントを投稿
次の投稿
前の投稿
ホーム
登録:
コメントの投稿 (Atom)
0 件のコメント:
コメントを投稿