如何调用 WMI 方法

WMI 的主要用途是提供对表示网络上对象的类和实例的访问。 这些类和实例由提供程序提供支持。 例如,表示企业中标准硬件设备的所有实例(例如 Win32_PhysicalMemoryWin32_Printer)由 Win32 提供程序提供支持。 类似地,你可以通过事件日志提供程序访问事件日志,通过注册表提供程序访问注册表。

WMI 在接口(例如 IWbemServices)或脚本对象(例如 SWbemServices)中实现的方法主要用于以一般方式获取和操作任何提供程序提供的数据。 例如,使用 SWbemServices.InstancesOf 获取一部分企业计算机中的所有 Win32_Process 实例。 然后,可以对每个 Win32_Process 对象调用 Win32 提供程序方法 GetOwnerSid

在以下示例中,GetOwnerSid 方法是作为 Process 对象的自动化方法调用的。 也可以在 Process 对象上调用 WMI 方法,例如为 SWbemObject 定义的 Path_ 方法。

Set ProcessCollection = _
    GetObject("WinMgmts:").InstancesOf("Win32_Process")

For Each Process In ProcessCollection
    SID = Process.GetOwnerSid
Next

使用 WMI 方法的实际过程与使用任何其他 Windows COM 或自动化接口的过程相同。 有关详细信息,请参阅 COM创建 WMI 应用程序或脚本。 有关 WMI 支持的接口的详细信息,请参阅适用于 WMI 的 COM API适用于 WMI 的脚本 API

有关详细信息,请参阅操作类和实例信息

调用方法