service - 如何使用vbscript检查服务状态?

标签 service vbscript wmi status wmi-query

是否可以使用 vbscript 检查服务状态?我希望为每种可能的服务状态提供一个功能: LINK 任何帮助都会很棒。我确实编写了一个函数来检查服务是否停止:

Public Function IsServiceStop(ByVal serviceName)
    On Error Resume Next
    Dim objServices, service
    Set oWmiService = GetObject("winmgmts:\\.\root\cimv2")
    Set objServices = oWmiService.ExecQuery("Select * from Win32_Service where Name='" & serviceName & "'")
    For Each service In objServices
        IsServiceStop = (service.Started = False)
        Exit Function
    Next
    IsServiceStop = True
    On Error Goto 0
End Function

最佳答案

如有疑问,请阅读 documentation 。您所需要做的就是检查服务对象的 State 属性:

serviceName = "..."

Set wmi = GetObject("winmgmts://./root/cimv2")
state = wmi.Get("Win32_Service.Name='" & serviceName & "'").State
WScript.Echo state

关于service - 如何使用vbscript检查服务状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21074223/

相关文章:

powershell - 通过 PowerShell 和 WMI 从用户名中获取用户的电子邮件地址?

c# - 如何向 C# 库添加服务引用?

service - 运行 Windows 服务时登录失败

logging - VBScript 是否有等效的 log4j?

asp-classic - vbscript/Classic ASP - 有没有办法以编程方式获取您自己的文件名?

c# - 如何以编程方式将服务依赖项添加到已安装的 Window 服务?

.net - .NET 中的异步 WMI 事件处理

hibernate - Grails::我讨厌并且根本无法理解: 'No hibernate session bound to current thread'

Java服务方法仅用于测试

vbscript - 我们如何使用vb脚本打开word文件