.vbs ile birden çok servisi durduralım – başlatalım


Windows servislerini durduran .vbs scripti
Windows servislerinin durdurulması ve yeniden başlatılması sistem adminleri için bazen oldukça gereklidir , hatta normal kullanıcılar bile gereksiz servisleri durdurmak sureti ile sistemlerini rahatlatma


yoluna başvurabilirler , acaba nette böyle bir script varmıdır diye araştırdım (Amerikayı yeniden keşfetmemek için) fakat malesef bulamadım , ve aşağıdaki scripti kodlamak durumunda kaldım , aşağıdakini bir notepad e yapistirip bir isim verin ve uzantısı .vbs olacak şekilde kaydedin

Birden fazla servisi aynı anda durduran vbs scripti:

strComputer = "."

Dim strService(5)
  strService(1) = " 'TrkWks' "
  strService(2) = " 'FDResPub' "
  strService(3) = " 'CscService' "
  strService(4) = " 'DPS' "
  strService(5) = " 'WMPNetworkSvc' "
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")

Set colServiceList = objWMIService.ExecQuery _
    ("Select * from Win32_Service Where Name ="_
  & strService(nCounter) & " ")

For nCounter = 1 to 5
  Set colListOfServices = objWMIService.ExecQuery _
  ("Select * from Win32_Service Where Name ="_
  & strService(nCounter) & " ")

  For Each objService in colListOfServices
    objService.StopService()
    errReturnCode = objService.ChangeStartMode("Disabled")
    WScript.Echo "Your "& strService(nCounter) & " service has Stopped"
  Next
Next 

Üstteki script çalıştığında aşağıdaki servisleri otomatik olarak Durduracak (Service status : Stopped) ve Baslangıç tipini de durduruldu (Startup typ : Disabled) yapacaktır.
- Distributed Link Tracking Client
- Function Discovery Resource Publication
- Diagnostic Policy Service
- Offline Files
- Windows Media Player Network Sharing Service

servis durduruldu

Egerki üstteki scripti düzenlemek isterseniz , mesela otomatik olarak 3 servisi durdurmak istiyorsunuz ; bu durumda editlemeniz gereken kısımlar :
Dim strService(3)
strService(1) = " 'Servis ismi gelecek' "
strService(2) = " 'Servis ismi gelecek' "
strService(3) = " 'Servis ismi gelecek' "
...
For nCounter = 1 to 3
Eger servisleri durdurduktan sonra uyari vermesini istemiyorsanız aşağıdaki kısmı çıkarmanız yeterlidir

WScript.Echo "Your "& strService(nCounter) & " service has Stopped"

Uyarısız şekilde servisleri durduralım:

strComputer = "."

Dim strService(5)
  strService(1) = " 'TrkWks' "
  strService(2) = " 'FDResPub' "
  strService(3) = " 'CscService' "
  strService(4) = " 'DPS' "
  strService(5) = " 'WMPNetworkSvc' "
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")

Set colServiceList = objWMIService.ExecQuery _
    ("Select * from Win32_Service Where Name ="_
  & strService(nCounter) & " ")

For nCounter = 1 to 5
  Set colListOfServices = objWMIService.ExecQuery _
  ("Select * from Win32_Service Where Name ="_
  & strService(nCounter) & " ")

  For Each objService in colListOfServices
    objService.StopService()
    errReturnCode = objService.ChangeStartMode("Disabled")

  Next
Next 

Eger üstteki servisleri toplu halde başlatmak istiyorsanız aşağıdaki satırı değiştirmeniz yeterlidir:

objService.StopService()
errReturnCode = objService.ChangeStartMode("Disabled")

yerine aşağıdaki satırı kullanın

objobjService.StartService()
errReturnCode = objService.ChangeStartMode("Automatic")

Tek bir servisi aşağıdaki script ile durdurabilirsiniz

strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")

Set colServiceList = objWMIService.ExecQuery _
    ("Select * from Win32_Service where Name = 'DPS'")

For Each objService in colServiceList
    If objService.State = "Running" Then
        objService.StopService()
    End If
    errReturnCode = objService.ChangeStartMode("Disabled")
Next

11.11.2011 tarihli Velociraptor Çalışmasıdır
(Lütfen kaynak belirtmeden yazıyı ve kodları Paylaşmayınız)


2 Yorum Var
  1. Avatar for Velociraptor
  2. Avatar for Legenfb

Yorum Ekle

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Captcha