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 |
標頭 |
|
類型程式庫 |
|
DLL |
|
CLSID |
CLSID_SWbemRefresher |
IID |
IID_ISWbemRefresher |