【问题标题】:Find a service with Partial name VBS查找具有部分名称 VBS 的服务
【发布时间】:2014-10-18 19:05:09
【问题描述】:

我们有一个服务在不同的机器上以不同的名字运行,比如

Bomgar-scadsadccd、Bomgarsdscchfn、Bomgarscnkfkdk

所以,在这里我们需要编写一个 VB 脚本来找到这个部分名称为“Bomgar”的服务 并检查它的状态

1) 不存在,然后应该从共享文件夹安装,例如“start \10.216.16.245\Bomgar.exe” 2)已安装但未运行,然后启动服务。 3) 安装并运行然后退出。

我们怎样才能做到这一点?

strComputer = "."
Set objWMIService = GetObject("winmgmts:" _ 
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") 

Set colRunningServices = objWMIService.ExecQuery("Select * from Win32_Service where Name='bomgar*'") 
nItems = colRunningServices.Count 

If nItems > 0 Then 
    For Each objItem in colRunningServices 
        If objItem.State = "Stopped" Then 
            objItem.startservice
        ElseIf objItem.State = "Running" Then
            exit
        End If
    Next
Else
    start \\10.18.23.245\Shared\Bomgar.exe
End If

【问题讨论】:

  • 向我们展示您目前所拥有的,并告诉我们您遇到的具体问题。听起来你是在要求我们为你写整件事,这可能就是你被否决的原因。
  • 我对此完全陌生,这就是我尝试过的。 "strComputer = "." Set objWMIService = GetObject("winmgmts:" _ & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") Set colRunningServices = objWMIService.ExecQuery("Select * from Win32_Service where Name='bomgar*'") nItems = colRunningServices.Count If nItems > 0 Then For Each objItem in colRunningServices If objItem.State = "Stopped" Then objItem.startservice ElseIf objItem.State = "Running" Then exit End If Next Else start \\10.18.23.245\Shared\Bomgar.exe End If
  • 我已将您的代码添加到您的问题中。

标签: vbscript scripting


【解决方案1】:

您可以在 WQL 语句中使用 like 关键字和 % 通配符来查找包含特定文本的任何服务。例如:

Set colRunningServices = objWMIService.ExecQuery("Select * from Win32_Service where Name like '%bomgar%'")

而不是start,您需要使用WshShell 对象的Run 命令来启动您的EXE:

With CreateObject("WScript.Shell")
    .Run "\\10.18.23.245\Shared\Bomgar.exe"
End With

【讨论】:

  • 我已经尝试过了,它正在工作。如果客户端不存在,它正在从共享文件夹安装,但是当服务停止时,它没有启动它。使用下面的。对于 colRunningServices 中的每个 objItem If objItem.State = "Stopped" Then objItem.startservice() End If
  • 如何像上面那样发布脚本?
猜你喜欢
  • 1970-01-01
  • 2021-10-30
  • 1970-01-01
  • 1970-01-01
  • 2013-07-12
  • 2013-04-19
  • 2017-12-28
  • 2014-04-19
  • 1970-01-01
相关资源
最近更新 更多