勇芳软件工作室.汉化:  Windows Management Instrumentation > Scripting API for WMI > Scripting API Objects >

SWbemRefresher

Previous pageReturn to chapter overviewNext page

SWbemRefresher对象是一个容器对象,可以刷新所有添加到其中的对象的数据。可以从容器添加或删除单个实例和实例枚举器。添加的对象集(由SWbemRefreshableItem实例表示的每个项目)可以被视为一个集合并枚举。任何类的WMI实例都可以添加到SWbemRefresher对象中。即使实例数据提供程序不是高性能提供程序,刷新对象仍然可以更新刷新调用中的数据。如果数据通过高性能提供程序提供,并且AutoReconnect属性为TRUE,则SWbemRefresher对象尝试重新建立与数据提供程序的连接断开。该对象可以由VBScript CreateObject调用创建。

 

可以通过调用SWbemRefresher.Refresh方法或SWbemObjectEx.Refresh_方法来执行刷新操作。

 

方法

 

SWbemRefresher对象定义了以下方法。

 

方法

描述

在刷新对象中的集合中添加一个新的可刷新对象。

AddEnum

在刷新对象中添加一个新的枚举器。

DeleteAll

从清理对象中的集合中删除所有项目。

项目

从集合返回指定的复习项。

刷新

更新清理对象中包含的所有项目。

去掉

从复习器中删除具有指定索引的刷新项目对象或对象集。

 

属性

 

SWbemRefresher对象定义了以下属性。

 

属性

描述

AutoReconnect

指示如果连接断开,刷新器是否自动重新连接到远程提供程序。

计数

包含刷新对象中的项目数。

 

示例代码[Script]

 

以下示例说明如何使用AddEnum方法创建SWbemRefresher对象来存储单个实例和枚举实例,刷新数据,并使用Item属性获取SWbemRefreshableItem对象。

 

'获取命名空间连接

设置objServicesCimv2 = GetObject(“winmgmts:root \\ cimv2”)

设置objServicesDefault = GetObject(“winmgmts:root \\ default”)

 

'创建一个刷新对象

set objRefresher = CreateObject(“WbemScripting.SWbemRefresher”)

 

'添加单个对象(SWbemObjectEx)到复习。“@”

'被使用,因为_CIMOMIdentification是一个单例类

“一个实例存在。请注意

'SWbemRefreshableItem.Object属性必须

“被指定或者SWbemRefresher.Refresh调用将失败。

 

设置objRefreshableItem1 = objRefresher。_

 Add(objServicesDefault,“__CIMOMIdentification = @”)。Object

 

'添加一个枚举器(SWbemObjectSet对象)

“到复习。请注意

'SWbemRefreshableItem.ObjectSet属性

“必须指定或SWbemRefresher.Refresh调用将失败。

设置objRefreshableItem2 = objRefresher。_

 AddEnum(objServicesCimv2,“Win32_Process”)。ObjectSet

 

'显示清理中的项目数量并更新数据。

MsgBox“refresher中的项数=”&objRefresher.Count

objRefresher.Refresh

 

“通过复习来迭代。SWbemRefreshable

'Item.IsSet检查项目是否是枚举器。

对于objRefherher中的每个RefreshableItem

如果RefreshableItem.IsSet那么

 MsgBox“Item with index”&RefreshableItem.Index {98??9796005}_

 “是一个枚举器,包含”_

 &RefreshableItem.ObjectSet.Count &“进程”

其他

  MsgBox“Item with index”&RefreshableItem.Index _

    &“是包含WMI版本”_“的单个对象

    & objRefreshableItem1.VersionCurrentlyRunning

万一

下一个

 

要求

 

客户

需要Windows Vista或Windows XP。

服务器

需要Windows Server 2008或Windows Server 2003。

类型库

使用Wbemdisp.tlb。

DLL

需要Wbemdisp.dll。