如何列出所有具有使用 VBScript 的方法的 WMI 类? [英] How to list all WMI classes having methods using VBScript?

查看:25
本文介绍了如何列出所有具有使用 VBScript 的方法的 WMI 类?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

使用 VBScript,如何列出所有具有方法的 WMI 类?

Using VBScript, how can I list all WMI classes that have methods?

推荐答案

运行 SELECT 模式查询 以获取命名空间中所有类的列表,然后检查每个类的Methods_.Count:

Run a SELECT schema query to get a list of all classes in a namespace, and then check each class's Methods_.Count:

strComputer  = "."
strNamespace = "root\cimv2"

Set oWMI = GetObject("winmgmts:\\" & strComputer & "\" & strNamespace)
Set colClasses = oWMI.ExecQuery("SELECT * FROM meta_class") 

For Each oClass in colClasses
  If oClass.Methods_.Count > 0 Then
    WScript.Echo oClass.Path_.Class
  End If
Next

您可能希望将结果限制为动态static,就像 WMI Code Creator 那样.为此,请为相应的类限定符添加额外的检查.

You may want to limit the results to dynamic and static classes only, like WMI Code Creator does. To do this, add an additional check for the corresponding class qualifiers.

...
For Each oClass in colClasses

  For Each oQualifier In oClass.Qualifiers_
    strQualName = LCase(oQualifier.Name)

    If strQualName = "dynamic" OR strQualName = "static" Then
      If oClass.Methods_.Count > 0 Then
        WScript.Echo oClass.Path_.Class
      End If
    End If

  Next
Next

我还建议您阅读 WMI 脚本入门:第 2 部分 文章.它通过示例详细解释了 WMI 概念和基础结构,并且可能已经为您将来的问题提供了答案.:)

I also suggest that you read the WMI Scripting Primer: Part 2 article. It explains the WMI concepts and infrastructure in detail and with examples, and may already hold answers to your future questions. :)

这篇关于如何列出所有具有使用 VBScript 的方法的 WMI 类?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆