SWbemRefresher 物件

SWbemRefresher物件是容器物件,可重新整理新增至該物件的所有物件的資料。 單一實例和實例列舉值可以從容器新增或移除。 新增的物件集,每個 由 SWbemRefreshableItem 實例表示的專案都可以視為集合並列舉。 任何類別的 WMI 實例都可以新增至 SWbemRefresher 物件。 即使實例資料的提供者不是高效能提供者,重新整理器物件仍然可以更新 Refresh 呼叫上的資料。 如果資料是透過高效能提供者提供,且 AutoReconnect 屬性為 TRUE則 SWbemRefresher 物件會嘗試重新建立與資料提供者的中斷連線。 此物件可由 VBScript CreateObject 呼叫建立。

藉由呼叫 SWbemRefresher.Refresh 方法或 SWbemObjectEx.Refresh_ 方法,即可執行重新整理作業。

成員

SWbemRefresher物件具有下列類型的成員:

方法

SWbemRefresher物件具有這些方法。

方法 描述
將新的可重新整理物件加入至重新整理器物件中的集合。
AddEnum 將新的列舉值加入至重新整理器物件。
DeleteAll 從重新整理程式物件中的集合中移除所有專案。
項目 從集合傳回指定的重新整理程式專案。
重新整理 更新重新整理程式物件中包含的所有專案。
移除 從重新整理程式移除具有指定索引的重新整理器專案物件或物件集。

屬性

SWbemRefresher物件具有這些屬性。

屬性 存取類型 描述
AutoReconnect
唯讀
指出如果連線中斷,重新整理器是否會自動重新連線到遠端提供者。
Count
唯讀
包含重新整理器物件中的專案數。

範例

下列範例說明如何使用 Add 和AddEnum方法來儲存單一實例和列舉實例、重新整理資料,以及使用 Item 屬性來取得SWbemRefreshableItem 物件,來建立 SWbemRefresher物件。

' Get namespace connections
set objServicesCimv2 = GetObject("winmgmts:root\cimv2")
set objServicesDefault = GetObject("winmgmts:root\default")

' Create a refresher object
set objRefresher = CreateObject("WbemScripting.SWbemRefresher")

' Add a single object (SWbemObjectEx) to the refresher. The "@"
' is used because _CIMOMIdentification is a singleton class- only 
' one instance exists. Note that the
' SWbemRefreshableItem.Object property must 
' be specified or the SWbemRefresher.Refresh call will fail.

set objRefreshableItem1 = objRefresher. _
    Add (objServicesDefault, "__CIMOMIdentification=@").Object

' Add an enumerator (SWbemObjectSet object)
' to the refresher. Note that the
' SWbemRefreshableItem.ObjectSet property
' must be specified or the SWbemRefresher.Refresh call will fail. 
set objRefreshableItem2 = objRefresher. _
    AddEnum (objServicesCimv2, "Win32_Process").ObjectSet

' Display number of items in refresher and update the data.
MsgBox "Number of items in refresher = " & objRefresher.Count
objRefresher.Refresh

' Iterate through the refresher. SWbemRefreshable
' Item.IsSet checks for whether the item is an enumerator.
for each RefreshableItem in objRefresher
 if RefreshableItem.IsSet then  
    MsgBox "Item with index " & RefreshableItem.Index &_
    " is an enumerator containing "_
    & RefreshableItem.ObjectSet.Count & " processes"
 else  
      MsgBox "Item with index " & RefreshableItem.Index _
          & " is a single object containing WMI version "_
          &  objRefreshableItem1.VersionCurrentlyRunning
 end if
next

規格需求

需求
最低支援的用戶端
Windows Vista
最低支援的伺服器
Windows Server 2008
標頭
Wbemdisp.h
類型程式庫
Wbemdisp.tlb
DLL
Wbemdisp.dll
CLSID
CLSID_SWbemRefresher
IID
IID_ISWbemRefresher

另請參閱

SWbemRefreshableItem

SWbemObjectEx

編寫 API 物件的腳本