Oggetto SWbemRefresher
L'oggetto SWbemRefresher è un oggetto contenitore che può aggiornare i dati per tutti gli oggetti aggiunti. È possibile aggiungere o rimuovere istanze singole dall'enumeratore dell'istanza dal contenitore. Il set di oggetti aggiunti, ogni elemento rappresentato da un'istanza di SWbemRefreshableItem , può essere considerata come raccolta ed enumerazione. È possibile aggiungere istanze WMI da qualsiasi classe all'oggetto SWbemRefresher . Anche se il provider per i dati dell'istanza non è un provider ad alte prestazioni, l'oggetto refresher può comunque aggiornare i dati nella chiamata Aggiorna. Se i dati vengono forniti tramite un provider ad alte prestazioni e la proprietà AutoReconnect è TRUE, l'oggetto SWbemRefresher tenta di ripristinare una connessione interrotta al provider di dati. Questo oggetto può essere creato dalla chiamata CreateObject VBScript.
L'operazione di aggiornamento può essere eseguita chiamando il metodo SWbemRefresher.Refresh o il metodo SWbemObjectEx.Refresh_ .
Membri
L'oggetto SWbemRefresher include questi tipi di membri:
Metodi
L'oggetto SWbemRefresher dispone di questi metodi.
Metodo | Descrizione |
---|---|
Aggiungere | Aggiunge un nuovo oggetto aggiornabile all'insieme nell'oggetto refresher. |
AddEnum | Aggiunge un nuovo enumeratore all'oggetto refresher. |
DeleteAll | Rimuove tutti gli elementi dall'insieme nell'oggetto refresher. |
Elemento | Restituisce un elemento di aggiornamento specificato dalla raccolta. |
Aggiorna | Aggiornamenti tutti gli elementi contenuti nell'oggetto refresher. |
Rimuovi | Rimuove l'oggetto dell'elemento di aggiornamento o il set di oggetti con un indice specificato dal aggiornatore. |
Proprietà
L'oggetto SWbemRefresher ha queste proprietà.
Proprietà | Tipo di accesso | Descrizione |
---|---|---|
Connessione automatica |
Sola lettura |
Indica se l'aggiornamento si riconnette automaticamente a un provider remoto se la connessione è interrotta. |
Conteggio |
Sola lettura |
Contiene il numero di elementi nell'oggetto refresher. |
Esempio
Nell'esempio seguente viene illustrata la creazione di un oggetto SWbemRefresher , usando i metodi Add eAddEnum per archiviare una singola istanza e un'istanza di enumerazione, l'aggiornamento dei dati e l'uso della proprietà Item per ottenere gli oggetti SWbemRefreshableItem .
' 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
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato |
Windows Vista |
Server minimo supportato |
Windows Server 2008 |
Intestazione |
|
Libreria dei tipi |
|
DLL |
|
CLSID |
CLSID_SWbemRefresher |
IID |
IID_ISWbemRefresher |