管理和优化服务的vbs

news/2025/2/26 4:54:56
Dim SS, S

Dim szMsg, szTtl

Dim l

 

Set SS = GetObject("winmgmts:{impersonationLevel=impersonate}").ExecQuery("Select * From Win32_Service")

szMsg = "执行了下列操作:" & vbCrLf

szTtl = "管理服务程序"

l = Len(szMsg)

 

For Each S In SS

 Select Case UCase(Trim(S.Name))

 Case "DFS":

  Call StopManual()

 Case "ERSVC":

  Call StopManual()

 Case "HELPSVC":

  Call StopManual()

 Case "MDM":

  Call StopManual()

 Case "MESSENGER":

  Call StopDisable()

 Case "SPOOLER":

  Call PrintSpooler()

 Case "REMOTEREGISTRY":

  Call StopDisable()

 Case "SCHEDULE":

  Call StopManual()

 Case "THEMES":

  Call Themes()

 Case "AUDIOSRV":

  Call WindowsAudio()

 Case "W32TIME":

  Call StopManual()

 End Select

Next

 

Set SS = Nothing

Set S = Nothing

 

If Len(szMsg) = l Then szMsg = "您的服务设置和本程序预期的一样!"

MsgBox szMsg, 4160, szTtl

 

'Distributed File System

'Error Reporting Service

'Help and Support

'Machine Debug Manager

'Task Scheduler

'Windows Time

Sub StopManual()

 Dim bFlg

 

 bFlg = False

 

 If StrComp(S.StartMode, "Manual", 1) Then

  S.ChangeStartMode("Manual")

  bFlg = True

 End If

 If StrComp(S.State, "Stopped", 1) Then

  S.StopService

  bFlg = True

 End If

 

 If bFlg Then szMsg = szMsg & vbCrLf & "停止" & S.Caption & "服务,并将其启动类型设为手动。"

End Sub

 

'Messenger

'Remote Registry

Sub StopDisable()

 Dim bFlg

 

 bFlg = False

 

 If StrComp(S.StartMode, "Disabled", 1) Then

  S.ChangeStartMode("Disabled")

  bFlg = True

 End If

 If StrComp(S.State, "Stopped", 1) Then

  S.StopService

  bFlg = True

 End If

 

 If bFlg Then szMsg = szMsg & vbCrLf & "停止并禁用了" & S.Caption & "服务。"

End Sub

 

'Print Spooler

Sub PrintSpooler()

 If StrComp(S.State, "Stopped", 1) or StrComp(S.StartMode, "Manual", 1) Then

  If MsgBox("您是否有打印机?", 4132, szTtl) = 7 Then

   S.ChangeStartMode("Manual")

   S.StopService

   szMsg = szMsg & vbCrLf & "停止并禁用了" & S.Caption & "服务。"

  End If

 End If

End Sub

 

'Themes

Sub Themes()

 If StrComp(S.State, "Stopped", 1) or StrComp(S.StartMode, "Manual", 1) Then

  If MsgBox("您是否要使用 XP 主题风格?", 4132, szTtl) = 7 Then

   S.ChangeStartMode("Manual")

   S.StopService

   szMsg = szMsg & vbCrLf & "停止并禁用了" & S.Caption & "服务。"

  End If

 End If

End Sub

 

'Windows Audio

Sub WindowsAudio()

 If StrComp(S.State, "Running", 1) or StrComp(S.StartMode, "Auto", 1) Then

  S.ChangeStartMode("Automatic")

  S.StartService

  szMsg = szMsg & vbCrLf & "自动启用了" & S.Name & "服务。"

 End If

End Sub  

http://www.niftyadmin.cn/n/2557049.html

相关文章

监控并中止QQ及QQgame进程 的vbs 脚本

监控并中止QQ及QQgame进程,同样可以用于中断其他程序进程,只要将进程的name写入stop_qq.txt 此脚本由 wscript.exe 脚本解析程序负责解析执行. 此脚本是死循环程序,要中断此脚本只需要在STOP_QQ.TXT 中填入含有 “WSCRIPT.EXE” 内容的记录并…

laravel生成控制器

生成控制器 1、生成普通控制器 php artisan make:controller PostController 2、使用RESTFUL生成控制器(自动生成index、create、store、show、edit、update、destory方法) php artisan make:controller PostController --resource 为RESTFul风格控制器…

教你们怎么查自己的手机信息

拨号界面输入:*#*#4636#*#* 即可 转载于:https://www.cnblogs.com/xieyuan/archive/2013/05/20/3787416.html

IBM 上海 LBS offer入手总结

(这是两年前写在CSDN上的文章,今天找到了转载过来,毕竟是回忆) IBM 上海 LBS offer入手总结 发表于2015/4/24 4:50:04 1109人阅读 今天下午IBM上海那边的team leader给我打电话,说是已经可以给我这个岗位的口头offer了,后面就是走…

程序模式VS2010 C++最简单的检查内存泄露

在写这篇文章之前,xxx已经写过了几篇关于改程序模式主题的文章,想要了解的朋友可以去翻一下之前的文章 每日一道理 生命,是一场漫长的棋局。这盘棋没有猎猎西风,没有四起狼烟,只有在取舍和进退中抉择。只有像棋中的小卒那样&#…

VB future

New features in Visual Basic 10VB10里会有哪些新功能呢? 今天在codeplex 网站看到了一个介绍VB10新功能的文档.(http://code.msdn.microsoft.com/vbfuture) 下来研究了一下.VB10和VB9比起来没有太多的亮点,只是对实用性方面作了一些改进. 像 Auto-im…

分布式技术追踪 2017年第十七期

分布式系统实践 1. Kudu vs HBase http://dwz.cn/5PF5gq 摘要: Cloudera在2016年发布了新型的分布式存储系统—kudu, kudu从外部形态上来说和HBase非常像, 这篇文章分析了二者的差异和定位. 2. Leaf——美团点评分布式ID生成系统 http://dwz.cn/5PFDFZ 摘要: 又一篇介绍分布式I…

Windows 消息常量

它在Windows单元中是这样声明的: type TMsg packed record hwnd: HWND; / /窗口句柄 message: UINT; / /消息常量标识符 wParam: WPARAM ; // 32位消息的特定附加信息 lParam: LPARAM ; // 32位消息的特定附加信息 time: DWORD; / /消息创建时的时间 pt: TPoint; /…