• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    VBS实现查询服务的制造商

    一个网友提问:

    select * from win32_service 这个能查服务名称、状态……

    但我想查这个服务的制造商,如微软、农业银行,还是未知的??这个属性是什么,谢谢……

    我发现msconfig中可以看见的,但无法提取

    下面给出解答,一种间接方法:

    根据服务名获取到关联的主程序,再从主程序获取制造商

    Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")
    Set Services = objWMIService.ExecQuery("Select * from Win32_Service")
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set objShell = CreateObject("Shell.Application")
    Set objFolder = objShell.NameSpace(0)
    i = 0
    Do
      If objFolder.GetDetailsOf("", i) = "公司" Then '非中文系统自行修改
        Exit Do
      Else
        i = i+1
      End If
    Loop
    
    For Each objService in Services
      path = GetPath(objService.PathName)
      IF fso.GetExtensionName(path) = "" Then path = path  ".exe"
      Set objFolder = objShell.NameSpace(fso.GetParentFolderName(path))
      Set objItem = objFolder.ParseName(fso.GetFileName(path))
      comp = objFolder.GetDetailsOf(objItem, i)
      If comp = "" Then comp = "未知"
      info = info  "服务:" objService.DisplayName " 制造商:" comp  vbCrLF
    Next
    fso.CreateTextFile("info.txt", true).WriteLine info
    MsgBox "完成"
    
    Function GetPath(strng)
      Dim re
      Set re = New RegExp
      re.Pattern = "^""?(.+\\[^\\\s""]+).*"
      GetPath = re.Replace(strng,"$1")
      Set regEx = Nothing
    End Function
    

    是不是非常不错的解法,小伙伴们可以学习下。

    您可能感兴趣的文章:
    • ACCESS的参数化查询,附VBSCRIPT(ASP)和C#(ASP.NET)函数
    • vbs版IP地理位置查询小偷
    • vbs版sql查询分析器lcx作品
    • 可以查询系统用户名sid的vbs
    • 字符ANSI代码查询工具vbs版
    • QueryCode.vbs 文本文件编码查询工具
    • 通过IIS自带工具Iisapp.vbs查询哪个w3wp.exe站点占用资源(cpu或内存)
    上一篇:VBS中解决带空格路径的三种方法
    下一篇:VBS实现截图功能
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    VBS实现查询服务的制造商 VBS,实现,查询服务,的,制造商,