SWbemRefresher-Objekt

Das SWbemRefresher-Objekt ist ein Containerobjekt, das die Daten für alle Objekte aktualisieren kann, die ihm hinzugefügt werden. Einzelne Instanzen und Instanzenumeratoren können dem Container hinzugefügt oder daraus entfernt werden. Der Satz der hinzugefügten Objekte, jedes Element, das durch eine SWbemRefreshableItem-Instanz dargestellt wird, kann als Auflistung behandelt und aufgezählt werden. WMI-Instanzen aus einer beliebigen Klasse können dem SWbemRefresher-Objekt hinzugefügt werden. Auch wenn der Anbieter für die Instanzdaten kein Hochleistungsanbieter ist, kann das Aktualisierungsobjekt die Daten beim Refresh-Aufruf trotzdem aktualisieren. Wenn die Daten über einen Hochleistungsanbieter bereitgestellt werden und die AutoReconnect-Eigenschaft TRUE ist, versucht das SWbemRefresher-Objekt, eine unterbrochene Verbindung mit dem Datenanbieter wiederherzustellen. Dieses Objekt kann durch den VBScript-CreateObject-Aufruf erstellt werden.

Der Aktualisierungsvorgang kann durch Aufrufen der SWbemRefresher.Refresh-Methode oder der _ SWbemObjectEx.Refresh-Methode ausgeführt werden.

Member

Das SWbemRefresher-Objekt verfügt über diese Typen von Membern:

Methoden

Das SWbemRefresher-Objekt verfügt über diese Methoden.

Methode BESCHREIBUNG
Hinzufügen Fügt der Auflistung im Aktualisierungsobjekt ein neues aktualisierbares Objekt hinzu.
Addenum Fügt dem Aktualisierungsobjekt einen neuen Enumerator hinzu.
DeleteAll Entfernt alle Elemente aus der Auflistung im Aktualisierungsobjekt.
Element Gibt ein angegebenes Aktualisierungselement aus der Auflistung zurück.
Aktualisieren Aktualisiert alle Elemente, die im Aktualisierungsobjekt enthalten sind.
Entfernen Entfernt das Aktualisierungselementobjekt oder den Objektsatz mit einem angegebenen Index aus der Aktualisierung.

Eigenschaften

Das SWbemRefresher-Objekt verfügt über diese Eigenschaften.

Eigenschaft Zugriffstyp Beschreibung
AutoReconnect
Schreibgeschützt
Gibt an, ob die Aktualisierung automatisch wieder eine Verbindung mit einem Remoteanbieter herstellen soll, wenn die Verbindung unterbrochen wird.
Anzahl
Schreibgeschützt
Enthält die Anzahl der Elemente im Aktualisierungsobjekt.

Beispiele

Das folgende Beispiel veranschaulicht das Erstellen eines SWbemRefresher-Objekts, das Verwenden der Add- und AddEnum-Methoden zum Speichern einer einzelnen Instanz und einer Enumerationsinstanz, das Aktualisieren der Daten und die Verwendung der Item-Eigenschaft zum Abrufen der SWbemRefreshableItem-Objekte.

' 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

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows Vista
Unterstützte Mindestversion (Server)
Windows Server 2008
Header
Wbemdisp.h
Typbibliothek
Wbemdisp.tlb
DLL
Wbemdisp.dll
CLSID
CLSID _ SWbemRefresher
IID
IID _ ISWbemRefresher

Weitere Informationen

SWbemRefreshableItem

SWbemObjectEx

Skripterstellung für API-Objekte