SWbemServices.InstancesOfAsync-Methode
Die InstancesOfAsync-Methode des SWbemServices-Objekts ruft Instanzen einer angegebenen Klasse gemäß benutzerdefinierten Kriterien ab.
Die -Methode wird im asynchronen Modus aufgerufen. Weitere Informationen finden Sie unter Aufrufen einer Methode.
Die Syntaxerklärung finden Sie unter Dokumentkonventionen für die Skripterstellungs-API.
Syntax
SWbemServices.InstancesOfAsync( _
ByVal ObjWbemSink, _
ByVal strClass, _
[ ByVal iFlags ], _
[ ByVal objWbemNamedValueSet ], _
[ ByVal objWbemAsyncContext ] _
)
Parameter
-
ObjWbemSink
-
Objektsenke, die die Instanzen asynchron empfängt. Erstellen Sie ein SWbemSink-Objekt, um die Objekte zu empfangen.
-
strClass
-
Erforderlich. Zeichenfolge, die den Namen der Klasse für die gewünschten Instanzen enthält. Dieser Parameter darf nicht leer sein.
-
iFlags [ Optional]
-
Bestimmt die Tiefe der Aufrufenumeration und ob der Aufruf sofort zurückgegeben wird. Dieser Parameter kann die folgenden Werte akzeptieren.
-
wbemQueryFlagShallow( (1 (0x1))
-
Erzwingt, dass die Enumeration nur direkte Unterklassen der angegebenen übergeordneten Klasse einschließt.
-
wbemQueryFlagDeep( 0 (0x0))
-
Der Standardwert für diesen Parameter. Dieser Wert erzwingt, dass die Enumeration alle Klassen in der Hierarchie einschließt.
-
wbemFlagSendStatus** (128 (0x80))
-
Bewirkt, dass asynchrone Aufrufe Statusupdates an den OnProgress-Ereignishandler für die Objektsenke senden.
-
wbemFlagDontSendStatus( (0 (0x0))
-
Verhindert, dass asynchrone Aufrufe Statusupdates an den OnProgress-Ereignishandler für die Objektsenke senden.
-
wbemFlagUseAmendedQualifiers** (131072 (0x20000))
-
Bewirkt, dass WMI Klassenänderungsdaten mit der Basisklassendefinition zurückgibt. Weitere Informationen finden Sie unter Lokalisieren von WMI-Klasseninformationen.
objWbemNamedValueSet [ Optional]
In der Regel ist dies nicht definiert. Andernfalls ist dies ein SWbemNamedValueSet-Objekt, dessen Elemente die Kontextinformationen darstellen, die vom Anbieter verwendet werden können, der die Anforderung wartet. Ein Anbieter, der Kontextinformationen unterstützt oder erfordert, muss die erkannten Wertnamen, den Datentyp des Werts, die zulässigen Werte und die Semantik dokumentieren.
objWbemAsyncContext [ Optional]
Ein SWbemNamedValueSet-Objekt, das zur Objektsenke zurückkehrt, um die Quelle des ursprünglichen asynchronen Aufrufs zu identifizieren. Verwenden Sie diesen Parameter, wenn Sie mehrere asynchrone Aufrufe mit derselben Objektsenke vornehmen. Um diesen Parameter zu verwenden, erstellen Sie ein SWbemNamedValueSet-Objekt, und verwenden Sie die SWbemNamedValueSet.Add-Methode, um einen Wert hinzuzufügen, der den asynchronen Aufruf identifiziert, den Sie vornehmen. Dieses SWbemNamedValueSet-Objekt wird an die Objektsenke zurückgegeben, und die Quelle des Aufrufs kann mithilfe der SWbemNamedValueSet.Item-Methode extrahiert werden.
Rückgabewert
Diese Methode gibt keinen Wert zurück. Bei Erfolg empfängt die Senke ein OnObjectReady-Ereignis pro Instanz. Nach der letzten Instanz empfängt die Objektsenke ein OnCompleted-Ereignis.
Fehlercodes
Nach Abschluss der InstancesOfAsync-Methode kann das Err-Objekt einen der Fehlercodes in der folgenden Liste enthalten.
-
wbemErrAccessDenied – 2147749891 (0x80041003)
-
Der aktuelle Benutzer verfügt nicht über die Berechtigung zum Anzeigen von Instanzen der angegebenen Klasse.
-
wbemErrFailed – 2147749889 (0x80041001)
-
Nicht angegebener Fehler.
-
wbemErrInvalidClass – 2147749904 (0x80041010)
-
Die angegebene Klasse ist ungültig.
-
wbemErrInvalidParameter – 2147749896 (0x80041008)
-
Ein angegebener Parameter ist ungültig.
-
wbemErrOutOfMemory – 2147749894 (0x80041006)
-
Nicht genügend Arbeitsspeicher, um den Vorgang abzuschließen.
Bemerkungen
Dieser Aufruf wird sofort zurückgegeben. Die angeforderten Objekte und der Status werden dem Aufrufer über Rückrufe zurückgegeben, die an die Senke übermittelt werden, die in objWbemSink angegeben ist. Um jedes Objekt zu verarbeiten, wenn es zurückgegeben wird, erstellen Sie einen objWbemSink. OnObjectReady-Ereignisunterroutine. Nachdem alle Objekte zurückgegeben wurden, können Sie die endgültige Verarbeitung in Ihrer Implementierung von objWbemSink ausführen. OnCompleted-Ereignis.
Ein asynchroner Rückruf ermöglicht es einem nicht authentifizierten Benutzer, Daten für die Senke bereitzustellen. Dies stellt Sicherheitsrisiken für Ihre Skripts und Anwendungen dar. Informationen zum Beseitigen der Risiken finden Sie unter Festlegen der Sicherheit bei einem asynchronen Aufruf.
Die InstancesOfAsync-Methode funktioniert nur für Klassenobjekte. Es ist kein Fehler, dass der zurückgegebene Enumerator null (0) Elemente enthält.
Requirements (Anforderungen)
| Anforderung | Wert |
|---|---|
| Unterstützte Mindestversion (Client) |
Windows Vista |
| Unterstützte Mindestversion (Server) |
Windows Server 2008 |
| Header |
|
| Typbibliothek |
|
| DLL |
|
| CLSID |
CLSID _ SWbemServices |
| IID |
IID _ ISWbemServices |